J'ai sous-classé org.eclipse.swt.widgets.Composite pour créer un nouveau contrôle composite. Je veux capturer les événements MouseEnter et MouseExit dans ce contrôle mais le problème que j'ai est que lorsque la souris survole un composant dans le contrôle (par exemple, un Label) l'événement MouseExit est déclenché, même si l'étiquette fait partie de l'ensemble Composite.Comment puis-je empêcher un contrôle composite SWT de déclencher un événement MouseExit lorsque la souris entre dans un contrôle de composant?
Y a-t-il un moyen d'arrêter cet événement? Je veux seulement voir l'événement si la souris quitte la limite totale du contrôle. Voici un exemple de code pour vous montrer ce que je veux dire.
public class MyControl extends Composite{
Label label;
public MyControl(Composite parent, String label) {
super(parent, SWT.NONE);
label = new Label(this,0);
label.setText(label);
this.addListener(SWT.MouseEnter, new Listener() {
@Override
public void handleEvent(Event event) {
// handle this event
}
});
this.addListener(SWT.MouseExit, new Listener() {
@Override
public void handleEvent(Event event) {
// handle this event
}
});
}
}
Excellent, merci beaucoup. –