在进行字段级验证时,允许取消模态表单的最佳方法是什么?
我有一个以模态显示的Delphi表单。其中有TComboBoxes,TEdits,Ok和Cancel按钮。这些字段具有OnExit方法,用于检查数据是否有效。但是,我想让“取消”按钮单击允许关闭表单而不验证字段。如果单击“取消”按钮,则会调用该字段的OnExit,并在关闭表单的按钮的OnClick之前运行验证。这种时间是不希望的,因为它使用户纠正他们希望放弃的数据。谢谢。
答案 0 :(得分:10)
我完全放弃了“在现场退出”的数据验证。它让那些知道自己正在做什么的用户感到沮丧(例如,某人可能正在从其他来源复制数据并粘贴在当前屏幕上,只有在粘贴所有数据时才有意义 - 通常每个字段的验证开始采取这样的行动)。
相反,尝试在用户准备好从当前屏幕移动时执行数据验证,通常是在他们单击“确定”或“下一步”按钮时。