我正在为NetBeans构建一个插件,我想知道当用户按下Ctrl + S或点击" Save ..."时,我将如何执行操作。按钮。
我在Google上搜索过此内容,但我无法提供一些指示或API来实现此目标。
实际上,我想在每次用户保存时捕获NetBeans活动编辑器的内容,同时编译源代码。
请您提供一些关于如何实现这一目标的提示或资源?
提前致谢! 雷米
答案 0 :(得分:1)
http://wiki.netbeans.org/DevFaqListenForSaveEvents
DataObject.Registry registries = DataObject.getRegistry();
registries.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
System.out.println("ChangedListener: o = " + e.getSource().getClass());
System.out.println("ChangedListener: o.source = " + e.getSource());
}
});
DataObject[] objects = registries.getModified();
for (int i = 0; i < objects.length; i++) {
DataObject dataObj = objects[I];
System.out.println("data object name = " + dataObj.getName());
System.out.println("data object pimary file name = " + dataObj.getPrimaryFile().getName());
Set fss = dataObj.files();
Iterator iter = fss.iterator();
while (iter.hasNext()) {
FileObject fo = (FileObject) iter.next();
System.out.println("\tset file object: " + fo.getName());
}
}