j'ai une JFrame avec quatre champs de texte (et d'autres composants dont
tous ont été rendus non "focusable"); donc quand l'utilisateur utilise
la touche TAB, on passe de l'un à l'autre. Or tout se fait en cinq temps:
champ1 -> champ2 -> champ3 -> champ4 -> AUCUN_FOCUS
puis on redevient au point de départ.
Je suppose qu'après le champ4, il n'y a plus de focus, car j'ai créé
(à des fins de déboguage) un FocusListener qui affiche grâce à la
méthode toString() quel composant acqiert le focus, or quand on quitte
le champ4, rien ne s'affiche (alors que des informations ésotériques sur
5/6 lignes apparaissent quand un des quatre champs récupère le focus).
Ma question est: peut-on simplement faire en sorte qu'en quittant le
champ4, on revienne au champ1 ? Je sais qu'on peut le faire grâce à
une méthode "deprecated" (je n'ai plus en tête, mais un truc du genre
setNextFocusable), qui marche, mais je n'aime pas utiliser des méthodes
qui me valent un avertissement lors de la compilation...
--
« nous devons agir comme si la chose qui peut-être ne sera pas devait
être » (Kant, Métaphysique des moeurs, doctrine du droit, II conclusion)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Auge Frederic
Thomas Baruchel wrote:
Bonjour,
j'ai une JFrame avec quatre champs de texte (et d'autres composants dont tous ont été rendus non "focusable"); donc quand l'utilisateur utilise la touche TAB, on passe de l'un à l'autre. Or tout se fait en cinq temps:
champ1 -> champ2 -> champ3 -> champ4 -> AUCUN_FOCUS puis on redevient au point de départ.
Je suppose qu'après le champ4, il n'y a plus de focus, car j'ai créé (à des fins de déboguage) un FocusListener qui affiche grâce à la méthode toString() quel composant acqiert le focus, or quand on quitte le champ4, rien ne s'affiche (alors que des informations ésotériques sur 5/6 lignes apparaissent quand un des quatre champs récupère le focus).
Ma question est: peut-on simplement faire en sorte qu'en quittant le champ4, on revienne au champ1 ? Je sais qu'on peut le faire grâce à une méthode "deprecated" (je n'ai plus en tête, mais un truc du genre setNextFocusable), qui marche, mais je n'aime pas utiliser des méthodes qui me valent un avertissement lors de la compilation...
Très bonne habitude de ne pas utiliser les méthodes dépréciées, et comme d'hab, dans la javadoc, on t'indique par quoi la méthode à été remplacé -> FocusTraversalPolicy
Thomas Baruchel wrote:
Bonjour,
j'ai une JFrame avec quatre champs de texte (et d'autres composants dont
tous ont été rendus non "focusable"); donc quand l'utilisateur utilise
la touche TAB, on passe de l'un à l'autre. Or tout se fait en cinq temps:
champ1 -> champ2 -> champ3 -> champ4 -> AUCUN_FOCUS
puis on redevient au point de départ.
Je suppose qu'après le champ4, il n'y a plus de focus, car j'ai créé
(à des fins de déboguage) un FocusListener qui affiche grâce à la
méthode toString() quel composant acqiert le focus, or quand on quitte
le champ4, rien ne s'affiche (alors que des informations ésotériques sur
5/6 lignes apparaissent quand un des quatre champs récupère le focus).
Ma question est: peut-on simplement faire en sorte qu'en quittant le
champ4, on revienne au champ1 ? Je sais qu'on peut le faire grâce à
une méthode "deprecated" (je n'ai plus en tête, mais un truc du genre
setNextFocusable), qui marche, mais je n'aime pas utiliser des méthodes
qui me valent un avertissement lors de la compilation...
Très bonne habitude de ne pas utiliser les méthodes dépréciées, et comme
d'hab, dans la javadoc, on t'indique par quoi la méthode à été remplacé
-> FocusTraversalPolicy
j'ai une JFrame avec quatre champs de texte (et d'autres composants dont tous ont été rendus non "focusable"); donc quand l'utilisateur utilise la touche TAB, on passe de l'un à l'autre. Or tout se fait en cinq temps:
champ1 -> champ2 -> champ3 -> champ4 -> AUCUN_FOCUS puis on redevient au point de départ.
Je suppose qu'après le champ4, il n'y a plus de focus, car j'ai créé (à des fins de déboguage) un FocusListener qui affiche grâce à la méthode toString() quel composant acqiert le focus, or quand on quitte le champ4, rien ne s'affiche (alors que des informations ésotériques sur 5/6 lignes apparaissent quand un des quatre champs récupère le focus).
Ma question est: peut-on simplement faire en sorte qu'en quittant le champ4, on revienne au champ1 ? Je sais qu'on peut le faire grâce à une méthode "deprecated" (je n'ai plus en tête, mais un truc du genre setNextFocusable), qui marche, mais je n'aime pas utiliser des méthodes qui me valent un avertissement lors de la compilation...
Très bonne habitude de ne pas utiliser les méthodes dépréciées, et comme d'hab, dans la javadoc, on t'indique par quoi la méthode à été remplacé -> FocusTraversalPolicy