Foxtable(狐表)用户栏目专家坐堂 → [求助]文本框输入错误数据后会运行两次代码


  共有3010人关注过本帖树形打印复制链接

主题:[求助]文本框输入错误数据后会运行两次代码

帅哥哟,离线,有人找我吗?
Hyphen
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/10/31 15:44:00 [显示全部帖子]

没有发现第一种情况,上传测试例子

 

文本框验证使用 Validating


 回到顶部
帅哥哟,离线,有人找我吗?
Hyphen
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2015/10/31 17:30:00 [显示全部帖子]

这边测试不会弹出2次提示。

 

表事件无法判断绑定的是那个控件,无法结合起来。只能逐个控件进行判断

 

变通作法,给文本框取有规则的名称,如txt_全长

 

Select Case e.DataCol.Name
    Case "全长"
        If e.NewValue > 100 Or e.NewValue < 50 Then
            MessageBox.Show("输入的数据超范围,请重新输入")
            e.Cancel = True

        End If
    Case "宽度"
        If e.NewValue > 40 Or e.NewValue < 20 Then
            MessageBox.Show("输入的数据超范围,请重新输入")
            e.Cancel = True

        End If
End Select

If e.Cancel AndAlso Forms("录入").Opened Then
    Forms("录入").Controls("txt_" & e.DataCol.Name).Select()
End If


 回到顶部