2011-06-21 4 views
0

Récemment, j'ai découvert la méthode Component.enableEvents (...). La façon dont j'imagine que cela fonctionnerait serait que Component.enableEvents (MouseEvent.MOUSE_PRESSED) m'avertirait seulement si cet événement spécifique s'est produit. Cependant, cela ne fonctionne pas comme ça, ou je ne peux pas le comprendre.Java; Component.enableEvents (...) ne fonctionne pas?

En ce moment, j'ai ce code:

frame.enableEvents(FocusEvent.FOCUS_GAINED | FocusEvent.FOCUS_LOST | ComponentEvent.COMPONENT_RESIZED); 

Mais je trouve encore que je reçois événements se composant, composants cachés, etc. Qu'est-ce que je fais mal?

Répondre

1

De la JavaDoc pour cette méthode:

Cette méthode ne doit être invoquée par les sous-classes de composants qui désirent avoir, peu importe si oui ou non un auditeur est inscrit sur les types d'événements spécifiés livrés à processEvent.

Cela ne dit rien sur le filtrage des types d'événements qui ne sont pas nommés.

+0

Oh, mon mauvais alors. Merci beaucoup! –