以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 项止打开不加载任数据 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=43536) |
-- 作者:yedaoan -- 发布时间:2013/12/9 19:49:00 -- 项止打开不加载任数据
项目打开后,总是会自动加载表,如果让项目打开不加载任何数据,只有按功能上的按键后,才打开相应的窗体 |
-- 作者:有点甜 -- 发布时间:2013/12/9 19:56:00 -- 不加载数据,参考 不加载表,参考 [此贴子已经被作者于2013-12-10 20:12:21编辑过]
|
-- 作者:653006728 -- 发布时间:2013/12/10 0:30:00 -- 如果项目打开初始不加载数据 跟不加载表有什么区别,? 不加载数据的话 通过查询是否能够现实数据? |
-- 作者:Bin -- 发布时间:2013/12/10 8:26:00 -- 不加载数据是不加载数据,但是还会加载空表. 不加载表是什么都不做. 你喜欢怎么查询都可以.
|
-- 作者:yedaoan -- 发布时间:2013/12/10 8:43:00 -- 有点甜,第三个帮助打不开,
其实,我要的是不加载任何表,只有我点击了功能区的菜单时,才打开相应的窗口,如果实现? |
-- 作者:Bin -- 发布时间:2013/12/10 8:51:00 -- 第三个帮助点这里http://www.foxtable.com/help/index.html?n=2752.htm 这也没什么难度 所有窗口设置不自动打开,然后在菜单Click事件里 输入 forms("XX").show 即可
|
-- 作者:yedaoan -- 发布时间:2013/12/10 9:30:00 -- 这个难住我了 在项目的 BeforeLoadOuterTable 事件,我设置不载任何表,代码如下: Select Case e.DataTableName
1、是达到了不加载表的目的,但是项目打开后,还是会自表产生一张表 “表1” 2、我点击了功能区的菜单后,提示 “所有者表 cp_cpinfo”不存在,由于我又在窗口里写了如下代码,希望能达到,不在界面上出现表,又能在中窗口上打开生成我要的数据(估且描述为 动态加载), 窗口的AfterLoad事件代码如下: If DataTables.Contains("cp_cpinfo") = False Then \'如果表C没有加载
结果还是不行,我要怎么做?
|
-- 作者:Bin -- 发布时间:2013/12/10 9:33:00 -- 1.不可能1个表都不显示的,狐表要求至少要显示1个表. 你可以使用一个空的内部表. 2.你可以加载完毕后选择隐藏这个表 tables(XX).visible=false
|
-- 作者:Bin -- 发布时间:2013/12/10 9:34:00 -- 其实如果你选择了隐藏表标题,多少个表,你也看不出来的啊. |
-- 作者:yedaoan -- 发布时间:2013/12/10 9:34:00 -- 关于动态加载表 动态加载数据,只是针对表的数据而言,表本身始终会加载的。 我见过很多用户,为减少初始加载的表的数量,不采用常规的设计方式,而是大量采用窗口,在窗口中插入SQLTable型或者SQLQuery型Table控件,这样在打开窗口的时候,才加载表的结构和数据,以提高系统的启动速度;但这种设计方式,背离了Foxtable“简单高效”的初衷,对于多数用户来说并不太容易控制,而且每次打开窗口都要加载一次数据,有效率的损失;此外由于这种设计方式,会导致表依附于窗口,关联和表达式这些常用好用的功能,以及跨表的数据计算与调用,也不容易实现。 如果表本身也可以动态加载,在需要的时候加载表的结构和数据,在不需要的时候还能卸载掉这个表,就能做到在打开项目的时候只加载极少的表,而大部分的表留在打开相关功能模块的时候加载;且这些功能模块暂时不使用的时候,还能卸载掉相关的表,那么以后不管有多少个表,我们都可以按常规设计系统了。
其他帮助里这段话,说到我心里去了,就是不知如何实现? |