Foxtable(狐表)用户栏目专家坐堂 → [求助]如何DATATABLE的数据被清除时在录入窗口进行更新


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

主题:[求助]如何DATATABLE的数据被清除时在录入窗口进行更新

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/20 16:13:00 [只看该作者]

 你要删除原本的代码啊,如果不符合,是不能离开编辑的啊

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


加好友 发短信
等级:幼狐 帖子:59 积分:560 威望:0 精华:0 注册:2013/10/16 18:03:00
  发帖心情 Post By:2014/11/20 16:28:00 [只看该作者]

还有个现象,在表的validateEdit事件的说明中,如果输入的数据不符合要求,

则e.cancel = true,

在帮助中原话“上面的代码首先判断在折扣列输入的内容是否大于0.15,如果是,则禁止退出编辑模式,除非你修改折扣值直到符合要求,或者按Esc键退出编辑”

但实际在应用中,再按一次回车或点别的列,就可以退出,并把错误的数据输入。还有,在表中直接输入也好,或在窗口输入

也好,刚打开第一次输入时,不会执行代码,也就是输入错误的代码,也不会出现提示。

不知道是不是我的版本没有升到最新版的原因?还是这里就是有问题?请专家验证一下。


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


加好友 发短信
等级:幼狐 帖子:59 积分:560 威望:0 精华:0 注册:2013/10/16 18:03:00
  发帖心情 Post By:2014/11/20 16:33:00 [只看该作者]

原来的代码已删除,还是这些问题。

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/20 16:35:00 [只看该作者]

 If e.Col.name = "内径" Then
    If e.Text = "" Then
        Return
    Else
        If val(e.Text) > val(3.43) OrElse val(e.Text) < val(3.4) Then
            MessageBox.Show("当前数值超出了管理范围,确定要输入?","确认",MessageBoxButtons.OK)
            e.cancel = True
        End If
    End If
End If
If e.Col.name = "内毛刺" Then
    If e.Text = ""  Then
        Return
    Else
        If val(e.Text) > val(0.1) Then
            MessageBox.Show("当前数值超出了管理范围,确定要输入?","确认",MessageBoxButtons.OK)
            e.cancel = True
        End If
    End If
End If
If e.Col.name = "外径A" Then
    If e.Text = "" Then
        Return
    Else
        If val(e.Text) > val(5.95) OrElse val(e.Text) < val(5.9) Then
            MessageBox.Show("当前数值超出了管理范围,请确认?","警告",MessageBoxButtons.OK)
            e.cancel = True
        End If
    End If
End If

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


加好友 发短信
等级:幼狐 帖子:59 积分:560 威望:0 精华:0 注册:2013/10/16 18:03:00
  发帖心情 Post By:2014/11/20 16:41:00 [只看该作者]

原来是我在  e.cancel = true 后加了个CR("内径") = nothing  的语句造成的。

为什么这里不能使用清空的语句?


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


加好友 发短信
等级:幼狐 帖子:59 积分:560 威望:0 精华:0 注册:2013/10/16 18:03:00
  发帖心情 Post By:2014/11/20 16:50:00 [只看该作者]

if message.show("数据超规格,请确认是否输入当前值?","提示",MessageBoxButtons.YesNo) = DialogResult.No  then

e.cacel = true

在显示的提示框内,默认的是YES按钮,如果想默认为NO按钮,如何设置?

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/20 16:50:00 [只看该作者]

 在这个控件是无法控制的。

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


加好友 发短信
等级:幼狐 帖子:59 积分:560 威望:0 精华:0 注册:2013/10/16 18:03:00
  发帖心情 Post By:2014/11/20 16:57:00 [只看该作者]

禁止退出也可以,我希望清空的原因是在保存时会检查所有数据是否完整输入,如果输入的数据不完整,是无法保存退出的。

所以这里才希望能清空,目前采用无法退出当前编辑也可以实现目的。接下来就是提到的默认按钮的问题了。因为有时需要

在输入的数据超规格时,如果得到认可,也是可以输入的。所以,在提示后,如果选择了YES,就可以输入,如果是NO,就

不可以输入,但如果默认为YES,人员在输入时,低头不看屏幕时,按回车键就会出现误输入的问题了。所以希望能默认NO


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/11/20 17:02:00 [只看该作者]

 


    Dim result As  DialogResult
    result = MessageBox.Show("当前数值超出了管理范围,确定要输入?","确认",MessageBoxButtons.YesNo,MessageBoxIcon.Question,MessageBoxDefaultButton.Button2)
    If result = DialogResult.No Then
        e.cancel = True
    End If

 


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


加好友 发短信
等级:幼狐 帖子:59 积分:560 威望:0 精华:0 注册:2013/10/16 18:03:00
  发帖心情 Post By:2014/11/20 17:29:00 [只看该作者]

谢谢! 

另外:在validateEdit事件中,val(cr("内径")) 提出的数据,好像是输入前的数据啊。

这样如何判断我新输入的数据呢?这样如果第一次输入错误,后面要输入两次才会判定

正确啊。专家,你再测试一下。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测量.zip


 回到顶部
总数 22 上一页 1 2 3 下一页