以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- Afterload 代码优化 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=66281) |
-- 作者:blsu33 -- 发布时间:2015/4/2 15:57:00 -- Afterload 代码优化 老师, 窗口的after load 代码耗时较长,请老师帮忙优化一下啊 For i As Integer = 1 To 999 Dim btn As object If i <= 99 Then btn = e.Form.CreateControl("btn_tabcontrol1_pg" & i, ControlTypeEnum.Button) End If If i <= 199 And i>=100 Then btn = e.Form.CreateControl("btn_tabcontrol2_pg" & i-99, ControlTypeEnum.Button) End If If i <= 299 And i>=200 Then btn = e.Form.CreateControl("btn_tabcontrol2=3_pg" & i-199, ControlTypeEnum.Button) End If If i <= 399 And i>=300 Then btn = e.Form.CreateControl("btn_tabcontrol4_pg" & i-299, ControlTypeEnum.Button) End If If i <= 499 And i>=400 Then btn = e.Form.CreateControl("btn_tabcontrol5_pg" & i-399, ControlTypeEnum.Button) End If If i <= 599 And i>=500 Then btn = e.Form.CreateControl("btn_tabcontrol6_pg" & i-499, ControlTypeEnum.Button) End If If i <= 699 And i>=600 Then btn = e.Form.CreateControl("btn_tabcontrol7_pg" & i-599, ControlTypeEnum.Button) End If If i <= 799 And i>=700 Then btn = e.Form.CreateControl("btn_tabcontrol8_pg" & i-699, ControlTypeEnum.Button) End If If i <= 899 And i>=800 Then btn = e.Form.CreateControl("btn_tabcontrol9_pg" & i-799, ControlTypeEnum.Button) End If If i <= 999 And i>=900 Then btn = e.Form.CreateControl("btn_tabcontrol10_pg" & i-899, ControlTypeEnum.Button) End If |
-- 作者:Bin -- 发布时间:2015/4/2 16:00:00 -- 你这是在干嘛 上个例子看看, 把你需求说出来,也许可以换个高效率的方法
|
-- 作者:有点甜 -- 发布时间:2015/4/2 16:01:00 -- 跟代码没有关系,你动态生成1000个控件肯定很慢啊。 |
-- 作者:blsu33 -- 发布时间:2015/4/2 16:55:00 -- 老师, 例子是这个附件我写有些夸张了,实际上不会到999,但会有一些; 另外,页面的关闭按钮还有些没有达到理想,劳烦有点甜老师在帮忙改下,真是不好意思。关闭按钮的提示 [此贴子已经被作者于2015/4/2 17:18:45编辑过]
|
-- 作者:blsu33 -- 发布时间:2015/4/2 17:06:00 -- 第一个问题 窗口1的afterload For i As Integer = 1 To 999 Dim btn As object If i <= 99 Then btn = e.Form.CreateControl("btn_tabcontrol1_pg" & i, ControlTypeEnum.Button) 这是一个生成页面对应的BUTTON 对应的每个模块的窗口 会有很多 例如 页面999的PAGE1 对应窗口2的模块的很多窗口 我设定最大是99个(实际不会是这么多,可以小些) |
-- 作者:Bin -- 发布时间:2015/4/2 17:19:00 -- 你弄那么多这些东西想做什么? 还不如点击页面再生成 |
-- 作者:Bin -- 发布时间:2015/4/2 17:20:00 -- 或者根据需求,生成对应数量的,不要那么多 |
-- 作者:有点甜 -- 发布时间:2015/4/2 17:26:00 -- 窗口2的SelectedIndexChanged事件的 e.Form 改成 Forms("窗口1") |
-- 作者:blsu33 -- 发布时间:2015/4/2 17:42:00 -- 有点甜老师, 还是不行,麻烦您再帮忙看看。 |
-- 作者:有点甜 -- 发布时间:2015/4/2 17:48:00 -- 全部改啊 |