J'utilise un JeditorPane, et je souhaiterais recuperer le mot sur
lequel est la souris lorsque je fait un clic droit. Est ce
realisable ? Si oui connaissez vous la bonne methode pour le faire ?
Merci,
Cordialement,
Romain
(Desole pour les accents, j'utilise un clavier qwerty)
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
Romain
On 30 juin, 12:00, Romain wrote:
Bonjour a tous,
J'utilise un JeditorPane, et je souhaiterais recuperer le mot sur lequel est la souris lorsque je fait un clic droit. Est ce realisable ? Si oui connaissez vous la bonne methode pour le faire ?
Merci,
Cordialement, Romain
(Desole pour les accents, j'utilise un clavier qwerty)
Re Bonjour,
J'ai fini par trouver une solution, en utilisant MouseListener, on peut se servir de la classe Robot pour effectuer un double click lorsqu'un click droit est fait sur le panel. Faire un double click sur un mot permet de le selectionner, de cette maniere on peut le recuperer.
public void mousePressed(MouseEvent e) { if(e.getButton() == MouseEvent.BUTTON3) { // Set the position for the caret try { Robot myRobot = new Robot(); myRobot.mousePress(InputEvent.BUTTON1_MASK); myRobot.mouseRelease(InputEvent.BUTTON1_MASK); myRobot.mousePress(InputEvent.BUTTON1_MASK); myRobot.mouseRelease(InputEvent.BUTTON1_MASK); // FIX : the first time, we can't get the selection. So we'd to simulate another right click if(nbTours == 0) { nbTours++; myRobot.mousePress(InputEvent.BUTTON3_MASK); myRobot.mouseRelease(InputEvent.BUTTON3_MASK); return; } else { nbTours=0; }
} catch (AWTException e1) { e1.printStackTrace(); } } } Je ne sais pas pourquoi, mais la premiere fois, on ne peut pas recuperer la selection. Donc, on relance (toujours avec Robot) la meme action, et c'est bon.
Romain
On 30 juin, 12:00, Romain <rom.boc...@gmail.com> wrote:
Bonjour a tous,
J'utilise un JeditorPane, et je souhaiterais recuperer le mot sur
lequel est la souris lorsque je fait un clic droit. Est ce
realisable ? Si oui connaissez vous la bonne methode pour le faire ?
Merci,
Cordialement,
Romain
(Desole pour les accents, j'utilise un clavier qwerty)
Re Bonjour,
J'ai fini par trouver une solution, en utilisant MouseListener, on
peut se servir de la classe Robot pour effectuer un double click
lorsqu'un click droit est fait sur le panel. Faire un double click sur
un mot permet de le selectionner, de cette maniere on peut le
recuperer.
public void mousePressed(MouseEvent e) {
if(e.getButton() == MouseEvent.BUTTON3) {
// Set the position for the caret
try {
Robot myRobot = new Robot();
myRobot.mousePress(InputEvent.BUTTON1_MASK);
myRobot.mouseRelease(InputEvent.BUTTON1_MASK);
myRobot.mousePress(InputEvent.BUTTON1_MASK);
myRobot.mouseRelease(InputEvent.BUTTON1_MASK);
// FIX : the first time, we can't get the selection. So we'd to
simulate another right click
if(nbTours == 0) {
nbTours++;
myRobot.mousePress(InputEvent.BUTTON3_MASK);
myRobot.mouseRelease(InputEvent.BUTTON3_MASK);
return;
} else {
nbTours=0;
}
} catch (AWTException e1) {
e1.printStackTrace();
}
}
}
Je ne sais pas pourquoi, mais la premiere fois, on ne peut pas
recuperer la selection. Donc, on relance (toujours avec Robot) la meme
action, et c'est bon.
J'utilise un JeditorPane, et je souhaiterais recuperer le mot sur lequel est la souris lorsque je fait un clic droit. Est ce realisable ? Si oui connaissez vous la bonne methode pour le faire ?
Merci,
Cordialement, Romain
(Desole pour les accents, j'utilise un clavier qwerty)
Re Bonjour,
J'ai fini par trouver une solution, en utilisant MouseListener, on peut se servir de la classe Robot pour effectuer un double click lorsqu'un click droit est fait sur le panel. Faire un double click sur un mot permet de le selectionner, de cette maniere on peut le recuperer.
public void mousePressed(MouseEvent e) { if(e.getButton() == MouseEvent.BUTTON3) { // Set the position for the caret try { Robot myRobot = new Robot(); myRobot.mousePress(InputEvent.BUTTON1_MASK); myRobot.mouseRelease(InputEvent.BUTTON1_MASK); myRobot.mousePress(InputEvent.BUTTON1_MASK); myRobot.mouseRelease(InputEvent.BUTTON1_MASK); // FIX : the first time, we can't get the selection. So we'd to simulate another right click if(nbTours == 0) { nbTours++; myRobot.mousePress(InputEvent.BUTTON3_MASK); myRobot.mouseRelease(InputEvent.BUTTON3_MASK); return; } else { nbTours=0; }
} catch (AWTException e1) { e1.printStackTrace(); } } } Je ne sais pas pourquoi, mais la premiere fois, on ne peut pas recuperer la selection. Donc, on relance (toujours avec Robot) la meme action, et c'est bon.