Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème avec JTextField

1 réponse
Avatar
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

1 réponse

Avatar
Christian Laborde
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