以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 记录窗口的显示与隐藏 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=188644) |
-- 作者:1234567 -- 发布时间:2023/10/8 20:20:00 -- 记录窗口的显示与隐藏 Table上有很多列,设计了多个记录窗口,根据某列的内容不同而显示对应的记录窗口.代码如下: 在表事件中CurrentChanged Dim rgd2 As WinForm.RecordGrid = e.Form.Controls("RecordGrid1") rgd2.Table = Tables("报价系统_Table4") \'指定绑定表 If Tables("报价系统_Table4").current("工步") = "车床"Then e.Form.Controls("RecordGrid2").Visible = False 隐藏所有记录窗口,代码怎么写? e.Form.Controls("RecordGrid3").Visible = False e.Form.Controls("RecordGrid1").Visible = True\'打开RecordGrid1 ElseIf Tables("报价系统_Table4").current("工步") = "磨床"Then e.Form.Controls("RecordGrid1").Visible = False e.Form.Controls("RecordGrid2").Visible = False e.Form.Controls("RecordGrid3").Visible = True\'打开RecordGrid1 End If rgd2.Build() \'重新生成记录窗口 第一个问题:选择不同数据行后,先要把所有记录窗口隐藏,隐藏所有记录窗口,代码怎么写? 第二个问题:当TABLE中没有数据时,提示运行错误:未将对象引用设置到对象的实例。怎么解决?
|
-- 作者:有点蓝 -- 发布时间:2023/10/8 20:32:00 -- 1、就是1楼的代码,逐个设置控件的Visible = False 2、http://www.foxtable.com/webhelp/topics/0445.htm,理解一下什么是“完美”代码
|
-- 作者:1234567 -- 发布时间:2023/10/8 21:33:00 -- Dim rgd2 As WinForm.RecordGrid = e.Form.Controls("RecordGrid1") rgd2.Table = Tables("生产调度_Table4") \'指定绑定表 If Tables("生产调度_Table4").Current IsNot Nothing And Tables("生产调度_Table4").current("工步") = "车床"Then e.Form.Controls("RecordGrid2").Visible = False e.Form.Controls("RecordGrid3").Visible = False e.Form.Controls("RecordGrid1").Visible = True\'打开RecordGrid1 Else If Tables("生产调度_Table4").Current IsNot Nothing And Tables("生产调度_Table4").current("工步") = "磨床"Then e.Form.Controls("RecordGrid1").Visible = False e.Form.Controls("RecordGrid2").Visible = False e.Form.Controls("RecordGrid3").Visible = True\'打开RecordGrid1 End If rgd2.Build() \'重新生成记录窗口 加上红色代码,还是提示运行错误:未将对象引用设置到对象的实例?当在Tables("生产调度_Table4")上新增一行后,可正常运行.
|
-- 作者:有点蓝 -- 发布时间:2023/10/8 21:46:00 -- 方法1、先判断Current IsNot Nothing,不要和其它条件放到一起 |