我正在开发一个Netbeans插件。所以,当我们在Netbeans中打开文件时,我想做的就是做点什么。当我们在Netbeans IDE中打开文件时,文件将在选项卡中打开。例如,当它打开时,我想打印其内容。
我目前正在通过PropertyChangeListener
实现它,但它不仅会在标签中打开新文件时触发,而且还会在右键单击最小化时触发...等等。所以我不能用它。我应该使用什么事件?
这是我目前的代码:
public void propertyChange(PropertyChangeEvent evt) {
JTextComponent jtc = EditorRegistry.lastFocusedComponent();
if (jtc != null) {
Document d = jtc.getDocument();
//more codes.....
}
}
答案 0 :(得分:0)
尝试检查它是否是新的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;
}