我在 Eclipse 中有一个包含复选框的首选项页面。这是家长偏好页面。子首选项页面应包含基于父页面中某些复选框值的不同字段编辑器。示例:如果选中父项中的复选框,则在子项中创建一个文本字段。我想在按应用时更新/重绘子页面。我试图通过以下方式做到这一点:我的子页面类如下所示:public class MyChildPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage覆盖 setVisible 方法:@Overridepublic void setVisible(final boolean visible){ super.setVisible(visible); if (visible) createFieldEditors(); }我的 createFieldEditors 方法每次都使用相同的 Composite 创建字段。尽管如此,仍然没有更新。有没有办法在更改焦点/可见性时重新触发首选项页面创建?
2 回答
动漫人物
TA贡献1815条经验 获得超10个赞
您应该只创建一次字段编辑器。
您可以覆盖propertyChange的方法,FieldEditorPreferencePage被告知关于每个嗜好性变化:
@Override
public void propertyChange(PropertyChangeEvent event) {
String propertyId = event.getProperty();
...
super.propertyChange();
}
添加回答
举报
0/150
提交
取消