Bonjour,

Pour que le focus ne passe pas sur le controle suivant, il faut donner la 
valeur "Non" à la propriété "Tabulation" de ce controle.

Cordialement,
T. Vataire

----- Mail Original -----
De: "Christophe Devalland" <christophe.devall...@ac-rouen.fr>
À: prog@fr.openoffice.org
Envoyé: Mercredi 24 Mars 2010 07:44:23
Objet: Re: [prog] invalider la tabulation dans un "textfield"

Le 23 mars 2010 17:43, Thibault Vataire <tvata...@starxpert.fr> a écrit :

> Bonjour,
>
> Le listener doit bien être enregistré auprès du champs texte mais la le
> type d'objet et la méthode ne sont pas les bon.
> Il faut utiliser un listener de type com.sun.star.awt.XKeyListener et la
> méthode addKeyListener() du champs text.
>

Bonjour Thibault et merci pour le code.
Cela fonctionne à moitié :
j'ai dû faire le traitement de la touche TAB dans KeyPressed et non
KeyReleased sinon le curseur bascule au champ suivant et l'ajout de chr(9)
ne se fait pas.
Une fois dans keyPressed, j'obtiens bien mon chr(9) dans ma zone de texte
mais cela n'empêche pas le focus de passer dans le champ suivant.
D'où mon idée de départ de ne pas laisser passer l'événement keypressed à
l'interface du dialog avec un listener de type KeyHandler. Mais cette
méthode  n'existe pas dans mon champ texte.
Mon impression est qu'il faut intercepter la gestion du TAB plus haut dans
la hierarchie des controls mais je ne trouve pas où mettre mon listener
KeyHandler.

Je continue mes recherches,
merci encore

---------------------------------------------------------------------
To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org
For additional commands, e-mail: prog-h...@fr.openoffice.org

Répondre à