我有一个带有列表和几个文本框的首选项页面。我想在用户进行一些更改并且没有点击“应用”或“确定”的情况下向用户弹出一个警告对话框,他按下取消。类似“您有未保存的更改。您确定要取消吗?”。
我试过putValue(String,String)
但偏好立即存储它。我如何保持“中间”状态?检查每个文本框的值或列表的值不是一个好主意。
有一种方法needsSaving()
,但我不知道它是如何工作的。我如何让它返回真实?
我有一个带有列表和几个文本框的首选项页面。我想在用户进行一些更改并且没有点击“应用”或“确定”的情况下向用户弹出一个警告对话框,他按下取消。类似“您有未保存的更改。您确定要取消吗?”。
我试过putValue(String,String)
但偏好立即存储它。我如何保持“中间”状态?检查每个文本框的值或列表的值不是一个好主意。
有一种方法needsSaving()
,但我不知道它是如何工作的。我如何让它返回真实?
您可以覆盖performCancel
PreferencePage。
尽管如此,我还是建议不要这样做(RCP 应用程序除外)。管理首选项的一般工作流程由周围的框架提供,如果用户在取消您的首选项时收到警告,但在同一 Eclipse 安装中取消其他警告时却没有,这可能会让用户感到困惑。