以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于数据调用增多问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=188677) |
|
-- 作者:刘效功天津 -- 发布时间:2023/10/10 16:58:00 -- 关于数据调用增多问题 软件链接:https://pan.baidu.com/s/1_McJVGmPBQsmaE328eKXqA?pwd=zwig 提取码: zwig 老师:需要解压一下 进行测试,谢谢 |
|
-- 作者:有点蓝 -- 发布时间:2023/10/10 17:28:00 -- 具体什么问题?请详细描述 另外一般上传.foxdb项目文件即可,其它杂七八的文件不需要上传
[此贴子已经被作者于2023/10/10 17:29:19编辑过]
|
|
-- 作者:刘效功天津 -- 发布时间:2023/10/10 17:30:00 -- 关于数据引用的增多确问题 专家老师好,请老师帮忙修改一下代码,谢谢老师!
上礼拜在老师的帮忙下调整了代码,在实际应用中出现问题了 问题一:在门窗表中修改门窗数量后 在门窗型材表中就突然无端增加很多行 如下表,本来应该调用的数据结构为1-18行,分格排序列应该为:宽度第I分格,宽度第2分格........高度第九分格 但是实际修改门窗表的门窗数量后就突然增加了好多好多多余的行,也搞不清楚是咋回事,见测试文件 理论应该为18行如下 序号 门窗代号 门窗数量 区域划分 楼栋代号 分格排序 分格代号 分格尺寸 分格数量
1 C1225 80 分区八 8号楼 宽度第I分格 B1 1100 10 2
C1225 80 分区八 8号楼 宽度第2分格 B2 1200 20 3
C1225 80 分区八 8号楼 宽度第3分格 B3 1300 30 4
C1225 80 分区八 8号楼 宽度第4分格 B4 1400 40 5
C1225 80 分区八 8号楼 宽度第5分格 B5 1500 50 6
C1225 80 分区八 8号楼 宽度第6分格 B6 1600 60 7
C1225 80 分区八 8号楼 宽度第7分格 B7 1700 70 8
C1225 80 分区八 8号楼 宽度第8分格 B8 1800 80 9
C1225 80 分区八 8号楼 宽度第9分格 B9 1900 90 10
C1225 80 分区八 8号楼 高度第一分格 H1 2100 11 11
C1225 80 分区八 8号楼 高度第二分格 H2 2200 22 12
C1225 80 分区八 8号楼 高度第三分格 H3 2300 33 13
C1225 80 分区八 8号楼 高度第四分格 H4 2400 44 14
C1225 80 分区八 8号楼 高度第五分格 H5 2500 55 15
C1225 80 分区八 8号楼 高度第六分格 H6 2600 66 16
C1225 80 分区八 8号楼 高度第七分格 H7 2700 77 17
C1225 80 分区八 8号楼 高度第八分格 H8 2800 88 18
C1225 80 分区八 8号楼 高度第九分格 H9 2900 99 在门窗表的DataColChanged事件中代码如下 \'关于门窗型材如果从门窗表或门窗信息中更改门窗数量,就会突然出现很多多余行 \'定义-门窗型材 - -门窗数量--自动更新代码 Select Case e.DataCol.Name
Case "门窗数量", "窗型图" Dim dr3s As List(Of DataRow) =
DataTables("门窗型材").Select("[门窗代号] = \'" & e.DataRow("门窗代号") &
"\' and [区域划分] =
\'" & e.DataRow("区域划分") & "\' and [楼栋代号] =
\'" & e.DataRow("楼栋代号") & "\'") For Each dr3 As DataRow In dr3s dr3("门窗数量") =
e.DataRow("门窗数量") dr3("窗型图") =
e.DataRow("窗型图") Next End Select 问题二 在编写的软件中,主菜单的属性对话框中的 显示文件名 逻辑属性也设置成true了,但是每次启动,仍不显示文件名,不知为什么,请老师看看是啥原因 问题三 在编写的软件中,文件--功能区—功能组中 新建文件按钮的代码为: Syscmd.Project.Create() 打开文件按钮 的代码为
Syscmd.Project.Open() 保存文件按钮的代码为: Syscmd.Project.Save() 另存为文件按钮代码为 Syscmd.Project.SaveAs() 上述4个按钮,在没有编译之前,没问题,能实现对应的功能,但是编译完成后,这几个功能就失效了,不能用,不知是啥原因,请老师看看代码,是啥原因 感谢老师,恭祝敬祝老师身体健康,工作顺利 万事如意。 |
|
-- 作者:刘效功天津 -- 发布时间:2023/10/10 17:33:00 -- 老师,就是从门窗表中修改门窗数量,门窗型材表中就会出现很多很多没用的行 |
|
-- 作者:有点蓝 -- 发布时间:2023/10/10 17:36:00 -- 建议不要在datacolchanged事件里做那种新增行的操作,这种不是合理的用法,因为只要有相关单元格的数据该就会触发这个事件;然后又在事件里给新单元格赋值,每个单元格赋值导致单元格数据变化又会触发执行datacolchanged一次。不死循环已经算是好的了 建议还是设计一个新增或者导入窗口,勾选需要新增的数据再导入保管里
|
|
-- 作者:刘效功天津 -- 发布时间:2023/10/10 17:39:00 -- 您说的这种处理问题的方式还没用过,不会,还没有深刻领会老师的意图 |
|
-- 作者:刘效功天津 -- 发布时间:2023/10/10 17:44:00 -- 老师这个对于新增行的处理,按您的建议在咱们得帮助文件中有相关的帮助案例吗,我还没有看到这种相关的示例 |
|
-- 作者:刘效功天津 -- 发布时间:2023/10/10 17:45:00 -- 勾选需要新增的数据再导入保管里,导入保管里是啥意思,理解不了 |
|
-- 作者:刘效功天津 -- 发布时间:2023/10/10 17:47:00 -- 老师好,您提供一个像这种新增行的数据刷新问题案例,我琢磨琢磨 |
|
-- 作者:有点蓝 -- 发布时间:2023/10/10 21:02:00 -- 一时半会找不到例子 问题一:怎么测试,按什么步骤测试?我测试好像没有问题 问题二:项目属性LoadUserSetting事件有代码隐藏了 问题三:这些属于开发功能,发布后是无法使用的 |