Foxtable(狐表)用户栏目专家坐堂 → DataColChanged表事件执行e.form.controls("TBox").value赋值错误


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

主题:DataColChanged表事件执行e.form.controls("TBox").value赋值错误

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


加好友 发短信
等级:二尾狐 帖子:502 积分:4924 威望:0 精华:0 注册:2016/7/11 10:12:00
DataColChanged表事件执行e.form.controls("TBox").value赋值错误  发帖心情 Post By:2019/7/2 13:20:00 [只看该作者]

老师 好

在表事件DataColChanged有下面代码:

Select Case e.DataRow("Screen")
    Case "项目参数"
    Case "系统参数"
    Case Else
msgbox(e.DataRow("Screen"))
msgbox(e.NewValue )
msgbox(e.DataRow(e.DataCol.Name))
    e.form.controls("TBox").value = e.NewValue 

End Select


在这里    e.form.controls("TBox").value = e.NewValue 就出现错误:

.NET Framework 版本:2.0.50727.5420
Foxtable 版本:2018.10.9.1
错误所在事件:表,矩阵场景,DataColChanged
详细错误信息:
调用的目标发生了异常。
未将对象引用设置到对象的实例。

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2019/7/2 14:10:00 [只看该作者]

DataColchanged时间没有e.Form这个参数的哦。

应该直接:

if  Forms("窗口名").Opened() Then
  forms("窗口名").controls("TBox").value = e.NewValue 
End IF

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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/2 14:13:00 [只看该作者]

2个问题
2、使用到窗口控件的,必须先判断窗口是否处于打开状态

if forms(“窗口1”).opened then  forms(“窗口1”).controls("TBox").value = e.NewValue

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


加好友 发短信
等级:二尾狐 帖子:502 积分:4924 威望:0 精华:0 注册:2016/7/11 10:12:00
  发帖心情 Post By:2019/7/2 21:23:00 [只看该作者]

谢谢

 回到顶部