在Eclipse RCP编辑器中,处理缺少的必填字段的最佳方法是什么?

时间:2009-03-20 13:11:26

标签: java eclipse-rcp

在Eclipse RCP应用程序中,我正在构建一个编辑器,其中某些字段是必需的。

如果用户使用未填写的字段保存编辑器,处理此问题的最佳方式/做法是什么?

(我的第一个猜测是如果在doSave()方法中这些字段是空的,则显示一个错误对话框,但我不确定这是处理这类问题的“eclipse”方式)

3 个答案:

答案 0 :(得分:2)

如果你考虑一些像“创建一个新的Java项目”这样的对话框,

  • 在填写必填字段(“项目名称”)之前,您根本无法执行任何操作(例如“下一步”或“完成”) 因此,与检查doSave()事件不同。

  • 如果该字段无效(如果项目名称已存在),则会在顶部的区域中显示警告。

  • 如果字段填写正确,然后就可以保存。

(注意:我知道这不是编辑,但它可以让你了解eclipse中的强制字段管理)

alt text http://ds.informatik.uni-marburg.de/MAGE/gdt/images/tutorial/NewJavaProject.png

答案 1 :(得分:1)

我同意VonC并禁用“保存”按钮,只要用户已提交所有重要字段即可。 Showig警告用户必须填写哪些字段会有很大帮助。

编辑:

创建一个将自己添加为更改侦听器的组件。当有人更改组件时,您可以检查输入是否正确。 创建一个包含所有自检组件的窗口,并将窗口添加为所有组件的监听器。

当有人更改某个组件时,您可以直接检查输入是否有效,并且用户可以跳到下一页或保存页面。

在RCP(示例FieldEditorPreferencePage)中,许多组件都有doSave()和isValid()方法。 在isValid()中,你可以检查你在窗口和doSave()中找到的所有组件,你可以检查isValid()状态,当它没有自动完成时,并执行一些额外的保存操作。

答案 2 :(得分:1)

如果字段内容不正确,您可以使用FieldDecorations标记必填字段并提供视觉反馈。