Foxtable(狐表)用户栏目专家坐堂 → 全局表事件启动开关的问题


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

主题:全局表事件启动开关的问题

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


加好友 发短信
等级:幼狐 帖子:195 积分:2069 威望:0 精华:0 注册:2011/6/29 19:14:00
全局表事件启动开关的问题  发帖心情 Post By:2012/12/8 7:46:00 [只看该作者]

我想在窗口中动态加载一个sqlquery表,只有当窗口被打开的时候才会加载,项目启动时不会自动打开窗口,
Dim tbl As WinForm.Table
tbl = e.Form.CreateSQLQuery(
"Table1""select * from ddb","sss")
tbl.SetBounds(
1010600400
)
e.Form.AddControl(tbl)
经测试表能成功创建
在全局表DrawCell事件中写入代码,
然后在项目事件Initialize加入代码:


    datatable("窗口1_table1").GlobalHandler.
DrawCell = True


这样会报错表不存在之类的错误


请教各位高人怎么实现

[此贴子已经被作者于2012-12-8 7:48:18编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/8 8:47:00 [只看该作者]

 报错是因为这个窗口没有打开自然这张表就不存在。

 动态加载有好几种方法,不一定要动态创建表控件的。

 你可以先创建好这个表控件,写好相应的事件,然后在打开窗口的时候动态加载内容。

http://www.foxtable.com/help/topics/1933.htm

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


加好友 发短信
等级:幼狐 帖子:195 积分:2069 威望:0 精华:0 注册:2011/6/29 19:14:00
  发帖心情 Post By:2012/12/8 9:16:00 [只看该作者]

我之前项目都是这样干的,而且打开窗口的时候不加载任何数据,即使这样项目启动速度任然很慢,所有才来研究动态加载表
个人感觉CurrentChanged事件最耗启动时间,如果有10张表以上都写了CurrentChanged事件代码,那没有15秒普通配置的电脑根本启动不了

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/8 9:35:00 [只看该作者]

 嗯嗯,项目启动的时候,默认会执行currentChanged事件。最好是把这个代码放到positionchanged事件里去。

 明白了……那你在窗口打开的时候再添加这句代码。

 datatable("窗口1_table1").GlobalHandler.DrawCell = True

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


加好友 发短信
等级:幼狐 帖子:195 积分:2069 威望:0 精华:0 注册:2011/6/29 19:14:00
  发帖心情 Post By:2012/12/8 9:56:00 [只看该作者]

好的 谢谢哈

 回到顶部