对于Eclipse-RCP-Plugin中的自己的PreferencePage,我使用BooleanFieldEditor。其值保存在PreferenceStore中(确认已保存)。 但编辑总是设置为" false"在再次打开PreferencePage之后。
public class PreferencePage extends FieldEditorPreferencePage implements
IWorkbenchPreferencePage {
[...]
protected void createFieldEditors() {
subversionSupportBooleanFieldEditor = new BooleanFieldEditor
(PreferenceConstants.FIELD_SUBVERSION_SUPPORT, "Enable Subversion support", BooleanFieldEditor.DEFAULT, getFieldEditorParent());
subversionSupportBooleanFieldEditor.setPreferenceStore(Activator.getDefault().getPreferenceStore());
subversionSupportBooleanFieldEditor.load();
[...]}
缺少什么?
答案 0 :(得分:1)
您需要覆盖doGetPreferenceStore
的{{1}}方法,并返回字段编辑器应使用的首选项存储。
PreferencePage
@Override
protected IPreferenceStore doGetPreferenceStore() {
return Activator.getDefault().getPreferenceStore();
}
initialize
方法将此处返回的值分配给每个字段编辑器。如果您不覆盖FieldEditorPreferencePage
,则会doGetPreferenceStore
的偏好存储。