Problème avec JTextField

Le
Christian Laborde
Bonjour.
J'essaie d'ajouter une fonction dans un JTextField
déclenchée par Ctrl-Y. J'ai :
map.put(KeyStroke.getKeyStroke('Y',
InputEvent.CTRL_DOWN_MASK), new AbstractAction() {
public void actionPerformed(ActionEvent e) {
setSelectionStart(getCaretPosition());
setSelectionEnd(getText().length());
replaceSelection("");
}
});
Le problème est que l'action est bien déclenchée mais que
getCaretPosition() me donne toujours 0 et getText() une
chaîne vide.
Où est l'os ?
--
Christian Laborde
La Révolution citoyenne, c'est sur : http://c.lab.over-blog.com/
Les citoyens qui voient Net : http://www.netoyens.info
Sentier des Vinches
CH 1091 Grandvaux
Suisse
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Christian Laborde
Le #22800241
J'ai compris une partie du problème. Il faut obtenir la
bonne map avec :

map = getInputMap(JComponent.WHEN_FOCUSED);

Maintenant j'ai une sélection correcte mais c'est
replaceSelection("") qui ne fait rien.


Christian Laborde a écrit :
Bonjour.
J'essaie d'ajouter une fonction dans un JTextField
déclenchée par Ctrl-Y. J'ai :
map.put(KeyStroke.getKeyStroke('Y',
InputEvent.CTRL_DOWN_MASK), new AbstractAction() {
public void actionPerformed(ActionEvent e) {
setSelectionStart(getCaretPosition());
setSelectionEnd(getText().length());
replaceSelection("");
}
});
Le problème est que l'action est bien déclenchée mais que
getCaretPosition() me donne toujours 0 et getText() une
chaîne vide.
Où est l'os ?



--
Christian Laborde
La Révolution citoyenne, c'est sur : http://c.lab.over-blog.com/
Les citoyens qui voient Net : http://www.netoyens.info
True E-mail : remove -no-spam-
Sentier des Vinches
CH 1091 Grandvaux
Suisse
Publicité
Poster une réponse
Anonyme