我在 Eclipse (IDE) 中有一个首选项页面,每次用户从属性更改值并单击确定时,这些值都会保存在首选项文件中。我正在使用侦听器来获取新值。但我需要做的是获取这个新值 -> 处理 -> 并将这个新值保存并存储在首选项文件中。我的实现是这样的:
public class PreferenceUtil extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
private StringFieldEditor stringUser;
@Override
public void init(IWorkbench arg0) {
setPreferenceStore(Activator.getDefault().getPreferenceStore());
}
@Override
protected void createFieldEditors() {
stringUser = new StringFieldEditor("user", "&User:\t\t", getFieldEditorParent());
addField(stringUser);
Activator.getDefault().getPreferenceStore().addPropertyChangeListener(new IPropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent event) {
if (event.getProperty() == "user") {
user = event.getNewValue().toString();
//ConnectionValues.convert(user) is an algorithm that process a string
stringUser.setStringValue(ConnectionValues.convert(user));
}
}
}
}