我正在开发图形插件,它使用当前文件中打开的对象。如果我更改打开的文件,我希望图表会更新。 现在,我在我的类中使用setFocus()方法扩展ViewPart,并在每次调用此函数时更新图形。 这不是我想要的,我只想在资源发生变化时更新图表。 我找到了这个链接:
This is like my question, but there is no answer
我需要将以下代码放在我的插件的activator.java文件中?:
IWorkspace workspace = ResourcesPlugin.getWorkspace();
IResourceChangeListener listener = new IResourceChangeListener() {
public void resourceChanged(IResourceChangeEvent event) {
System.out.println("Something changed!");
}
};
workspace.addResourceChangeListener(listener);
//... some time later one ...
workspace.removeResourceChangeListener(listener);
如果我需要添加此代码,请将其放在何处?在哪个方法将它放在activator.java文件中? 如果没有,我需要做什么?
答案 0 :(得分:1)
在视图部分createPartControl
中设置侦听器。
激活器不适合设置侦听器,因为只有在插件中的其他代码运行时才会运行。