Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共4 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:记录窗口的显示与隐藏

1楼
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中没有数据时,提示运行错误:未将对象引用设置到对象的实例。怎么解决?
2楼
有点蓝 发表于:2023/10/8 20:32:00
1、就是1楼的代码,逐个设置控件的Visible = False

2、http://www.foxtable.com/webhelp/topics/0445.htm,理解一下什么是“完美”代码
3楼
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")上新增一行后,可正常运行.
4楼
有点蓝 发表于:2023/10/8 21:46:00
方法1、先判断Current IsNot Nothing,不要和其它条件放到一起
2、http://www.foxtable.com/webhelp/topics/0220.htm,分清楚And和AndAlso的区别
共4 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .04688 s, 2 queries.