Foxtable(狐表)用户栏目专家坐堂 → [求助]CurrentChanged


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

主题:[求助]CurrentChanged

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
[求助]CurrentChanged  发帖心情 Post By:2015/10/19 18:39:00 [显示全部帖子]

CurrentChanged

If e.Table.Current IsNot Nothing Then  
    Select Case e.Table.Current("订单状态")
        Case "已上线"
            Forms("产线2").Controls("CheckBox1").checked = True
            Forms("产线2").Controls("CheckBox1").Enabled = False
        Case "生产已完成"
            Forms("产线2").Controls("CheckBox1").checked = True
            Forms("产线2").Controls("CheckBox1").Enabled = False
            Forms("产线2").Controls("CheckBox2").checked = True
            Forms("产线2").Controls("CheckBox2").Enabled = False
            msgbox(e.Table.Current("订单编号"))
        Case "品管正在检验"
            Forms("产线2").Controls("CheckBox1").checked = True
            Forms("产线2").Controls("CheckBox1").Enabled = False
            Forms("产线2").Controls("CheckBox2").checked = True
            Forms("产线2").Controls("CheckBox2").Enabled = False
            Forms("产线2").Controls("CheckBox3").checked = True
            Forms("产线2").Controls("CheckBox3").Enabled = False
        Case "品管检验通过"
            Forms("产线2").Controls("CheckBox1").checked = True
            Forms("产线2").Controls("CheckBox1").Enabled = False
            Forms("产线2").Controls("CheckBox2").checked = True
            Forms("产线2").Controls("CheckBox2").Enabled = False
            Forms("产线2").Controls("CheckBox3").checked = True
            Forms("产线2").Controls("CheckBox3").Enabled = False
            Forms("产线2").Controls("CheckBox4").checked = True
            Forms("产线2").Controls("CheckBox4").Enabled = False
            Forms("产线2").Controls("CheckBox5").checked = False
            Forms("产线2").Controls("CheckBox5").Enabled = False
        Case "品管检验未过"
            Forms("产线2").Controls("CheckBox1").checked = True
            Forms("产线2").Controls("CheckBox1").Enabled = False
            Forms("产线2").Controls("CheckBox2").checked = True
            Forms("产线2").Controls("CheckBox2").Enabled = False
            Forms("产线2").Controls("CheckBox3").checked = True
            Forms("产线2").Controls("CheckBox3").Enabled = False
            Forms("产线2").Controls("CheckBox4").checked = False
            Forms("产线2").Controls("CheckBox4").Enabled = False
            Forms("产线2").Controls("CheckBox5").checked = True
            Forms("产线2").Controls("CheckBox5").Enabled = False
        Case "已入库"
            Forms("产线2").Controls("CheckBox1").checked = True
            Forms("产线2").Controls("CheckBox1").Enabled = False
            Forms("产线2").Controls("CheckBox2").checked = True
            Forms("产线2").Controls("CheckBox2").Enabled = False
            Forms("产线2").Controls("CheckBox3").checked = True
            Forms("产线2").Controls("CheckBox3").Enabled = False
            Forms("产线2").Controls("CheckBox4").checked = True
            Forms("产线2").Controls("CheckBox4").Enabled = False
            Forms("产线2").Controls("CheckBox5").checked = False
            Forms("产线2").Controls("CheckBox5").Enabled = False
            Forms("产线2").Controls("CheckBox6").checked = True
            Forms("产线2").Controls("CheckBox6").Enabled = False            
    End Select
End If

问题来了,checkbox的勾选不是根据所选择的行动态变化,而是不了选择哪一行,checkbo的勾选都是固定的。我知道代码有问题,可又不知道怎么实现这个功能。请帮忙。多谢。

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/10/19 18:40:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:勾选.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/10/20 12:10:00 [显示全部帖子]

不是很懂。比如怎么改?
另外好像不是我问题的答案。
我的问题是选择了不同行,最上面的checkbox的好像没有变化。
按照我的思路,应该选择不同行,current行是变化的,那么最上面的checkbox也应该跟着我当前选择的行的情况而变化。

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/10/20 19:26:00 [显示全部帖子]

运行错误:
.NET Framework 版本:2.0.50727.8009
Foxtable 版本:2014.11.11.1
错误所在事件:临时版本跟踪表,CurrentChanged
详细错误信息:
未将对象引用设置到对象的实例。

难道蓝色的代码和红色的代码不能共存?还是什么原因?
If e.Table.Current IsNot Nothing Then
    If DataTables("需求明细表").Find("需求编号 = '" & e.Table.Current("需求编号") & "'") Is Nothing Then
        DataTables("需求明细表").AppendLoad("需求编号 = '" & e.Table.Current("需求编号") & "'")
    End If
    Select Case e.Table.Current("订单状态")
        Case "未开始生产",""
            Forms("产线2").Controls("CheckBox1").checked = False
            Forms("产线2").Controls("CheckBox2").checked = False
            Forms("产线2").Controls("CheckBox3").checked = False
            Forms("产线2").Controls("CheckBox4").checked = False
            Forms("产线2").Controls("CheckBox5").checked = False
            Forms("产线2").Controls("CheckBox6").checked = False
            Forms("产线2").Controls("CheckBox1").Enabled = True
            Forms("产线2").Controls("CheckBox2").Enabled = True
            Forms("产线2").Controls("CheckBox3").Enabled = True
            Forms("产线2").Controls("CheckBox4").Enabled = True
            Forms("产线2").Controls("CheckBox5").Enabled = True
            Forms("产线2").Controls("CheckBox6").Enabled = True
        Case "已上线"
            Forms("产线2").Controls("CheckBox1").checked = True
            Forms("产线2").Controls("CheckBox2").checked = False
            Forms("产线2").Controls("CheckBox3").checked = False
            Forms("产线2").Controls("CheckBox4").checked = False
            Forms("产线2").Controls("CheckBox5").checked = False
            Forms("产线2").Controls("CheckBox6").checked = False
            Forms("产线2").Controls("CheckBox1").Enabled = False
            Forms("产线2").Controls("CheckBox2").Enabled = True
            Forms("产线2").Controls("CheckBox3").Enabled = True
            Forms("产线2").Controls("CheckBox4").Enabled = True
            Forms("产线2").Controls("CheckBox5").Enabled = True
            Forms("产线2").Controls("CheckBox6").Enabled = True
end select
endif

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/10/20 19:48:00 [显示全部帖子]

顺序换了一下还是报同样的错。
和顺序有关系吗?

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/10/20 19:56:00 [显示全部帖子]

单独执行蓝色代码没有报错,把select加上,就报错。

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


加好友 发短信
等级:五尾狐 帖子:1182 积分:8225 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2015/10/20 20:11:00 [显示全部帖子]

确实是。
增加了If Forms("产线2").Opened = True Then
执行select。
不报错了。

 回到顶部