Foxtable(狐表)用户栏目专家坐堂 → 窗口出错解决方法


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

主题:窗口出错解决方法

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


加好友 发短信
等级:婴狐 帖子:44 积分:616 威望:0 精华:0 注册:2020/5/18 1:10:00
窗口出错解决方法  发帖心情 Post By:2020/8/22 13:24:00 [只看该作者]

1、制作了一个录入窗口,绑定了姓名、数量、品名,同时设置了“增加行”、“删除行”,“上报”“上一行”“下一行”等按钮;正常情况下,先点击“新增行”再按顺序操作一切都OK,有一个新用户,他进入这个录入框,先新增行,一切OK,如果第一步不是先点新增行,点其他按钮或文本框就会报错:如下:

 

.NET Framework 版本:4.0.30319.1026
Foxtable 版本:2020.5.29.8
错误所在事件:窗口,订单,TextBox3,Enter
详细错误信息:
Object reference not set to an instance of an object.

 

2、请教老师:如何解决,用户打开窗口时,先不加载任何内容;可以使用“上下行”按钮,“新增一行”按钮,其他按钮和输入框(文本框)不能使用或隐藏。谢谢!

[此贴子已经被作者于2020/8/22 13:25:26编辑过]

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


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/22 13:37:00 [只看该作者]

1、错误所在事件:窗口,订单,TextBox3,Enter,代码有问题,请检查

2、到窗口afterload事件控制即可,如:
e.Form.Controls("txtName").Visible = False:http://www.foxtable.com/webhelp/topics/0715.htm
e.Form.Controls("btnAdd").Enabled = False:http://www.foxtable.com/webhelp/topics/0714.htm

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


加好友 发短信
等级:婴狐 帖子:44 积分:616 威望:0 精华:0 注册:2020/5/18 1:10:00
  发帖心情 Post By:2020/8/22 14:51:00 [只看该作者]

1、TextBox3,Enter,代码

If User.name =  Tables("订单").current("姓名")  And Tables("订单").current.Isnull("业务状态") Then
     e.Sender.ReadOnly = BooleanEnum.False

Else
     e.Sender.ReadOnly = BooleanEnum.True
End If

 

2、这个按钮也会出同样的错:窗口,订单,Button2,Click

If Tables("订单").Current.Isnull("业务状态") Then
  Tables("订单").Current.Delete
Else
  MessageBox.show("已送审,不能删除")
End If

3、出错原因是不是:打开窗口后,什么都没有,_Identify还是空值,所以不存在所谓的行,所以代码对行的操作都是错误的?但不知道该怎么改

我想写一个判断语句

if Tables("订单").current.Isnull("_Identify") then  '没有选中行时(这句代码有错,不知道该怎么调)

e.Form.Controls("txtName").Visible = False

endif

[此贴子已经被作者于2020/8/22 15:00:18编辑过]

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


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/22 15:32:00 [只看该作者]

Current使用之前都要先判断一下是否是空行:http://www.foxtable.com/webhelp/topics/0445.htm

If Tables("订单").Current IsNot Nothing Then

If User.name =  Tables("订单").current("姓名")  And Tables("订单").current.Isnull("业务状态") Then
     e.Sender.ReadOnly = BooleanEnum.False

Else
     e.Sender.ReadOnly = BooleanEnum.True
End If

End If

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


加好友 发短信
等级:婴狐 帖子:44 积分:616 威望:0 精华:0 注册:2020/5/18 1:10:00
  发帖心情 Post By:2020/8/22 22:20:00 [只看该作者]

问题解决了,谢谢指导


 回到顶部