sélection d'un texte sur hover
Bonjour,
J'utilise un composant 'org.eclipse.swt.widgets.Text' et cherche à intercepter l'évenements : hover.
Rien d'extraordinaire pour l'instant
text.addMouseTrackListener(new MouseTrackListener(){
public void mouseHover(MouseEvent arg0) {
// code ...
}
});
Seulement, j'aimerais récupérer le texte sous la souris. Par exemple, récupérer path2 dans le texte suivant :
'path1/path2/path3/.../pathx'
J'obtiens bien les coordonnées de la souris :
HOVER : MouseEvent{Text {} time=8829843 data=null button=0 stateMask=0 x=207 y=11 count=0}
Comment faire le lien avec le texte ???
[résolu] sélection d'un texte sur hover
Effectivement ça marche. Merci beaucoup pour ton aide.
Text m_text = new Text(parent, SWT.BORDER);
m_text.setText("essai de texte");
m_text.addMouseTrackListener(new MouseTrackListener(){
public void mouseHover(MouseEvent evt) {
int indent = m_text.getBorderWidth();
int charidx = 0;
GC gc = new GC(m_text);
String txt = m_text.getText();
while (indent < evt.x) {
indent += gc.stringExtent(Character.toString(txt.charAt(charidx++))).x;
}
System.out.println("HOVER : " + txt.substring(0, charidx));
gc.dispose();
}
});