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
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
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
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
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