2015-08-06 1 views
0

Je développe un plugin Netbeans. Donc ce que je veux, c'est faire quelque chose quand on ouvre un fichier dans Netbeans. Lorsque nous ouvrons un fichier dans l'EDI Netbeans, le fichier sera ouvert dans un onglet. Par exemple, quand il s'ouvre, je veux imprimer son contenu.déclencher un événement lors de l'ouverture d'un fichier dans netbeans

Je l'obtiens actuellement par PropertyChangeListener mais il se déclenche non seulement quand un nouveau fichier s'ouvre dans un onglet mais aussi quand le clic droit minimise ... et beaucoup plus. Donc je ne peux pas l'utiliser. Quel événement dois-je utiliser pour cela?

Ceci est mon code actuel:

public void propertyChange(PropertyChangeEvent evt) { 
       JTextComponent jtc = EditorRegistry.lastFocusedComponent(); 
       if (jtc != null) { 
        Document d = jtc.getDocument(); 
        //more codes..... 
       } 
} 

Répondre

0

Essayez juste vérifier si elle est une nouvelle JTextComponent.

JTextComponent lastJtc = null; 

public void propertyChange(PropertyChangeEvent evt) { 
       JTextComponent jtc = EditorRegistry.lastFocusedComponent(); 
       if (jtc != null && jtc != lastJtc) { 
        Document d = jtc.getDocument(); 
        //more codes..... 
       } 
       lastJtc = jtc; 
}