动态错误提示
如果发现用户输入的重要数据不符合规范,通常我们会显示一个对话框,给用户以提示。
这种纠正输入错误的方法较为“粗暴”,在用户输入的过程中,应该尽量不要打断用户操作的连贯性,我们可以用较为“平和”的方式对用户做出提示。
示例一
假定订单表中的折扣列不能超过0.2,如果输入的折扣超过0.2,就给以提示。
为此可以在AfterEdit事件中设置代码:
If
e.Col.name
= "折扣" Then
If e.Row("折扣")
> 0.2 Then
e.Row.DataRow.SetError("折扣",
"折扣不能超过0.2!")
Else
e.Row.DataRow.SetError("折扣","")
End
If
End
If
这样用户输入超过0.2的折扣后,会在折扣单元格显示一个红色的图标,表示这里输入的内容有误,当鼠标移到这个红色图标上时,会显示具体的错误信息:
示例二
只有直接在表中输入数据,AfterEdit事件才会生效,如果希望任何情况导致折扣超出0.2,都会出现折扣提示,可以将DataColChanged事件的代码设置为:
If
e.DataCol.name
=
"折扣"
Then
If
e.DataRow("折扣")
> 0.2
Then
e.DataRow.SetError("折扣",
"折扣不能超过0.2!")
Else
e.DataRow.SetError("折扣","")
End
If
End
If
提示:上述方式并非只能用于错误提示,实际上你可以用于任何提示,只是这种方式多数时候用于错误提示而已。