以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码运行慢 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=115838) |
-- 作者:有点甜 -- 发布时间:2018/3/15 14:57:00 -- 你这个是datacolchanged事件的代码。
你打开窗口的时候重置列了?不然怎么会触发事件?
你使用sqlCompute就是会慢的,要计算的行数越多、就越慢。大约执行一次要0.5秒,你要执行多少次sqlCompute? |
-- 作者:有点甜 -- 发布时间:2018/3/15 15:05:00 -- 打开窗口的时候执行了什么代码?AfterLoad事件写了什么代码?
|
-- 作者:客人 -- 发布时间:2018/3/15 15:46:00 -- If e.Form.Width> 0 AndAlso e.Form.height > 0 Then vars("width") = e.Form.width vars("height") = e.Form.height End If Dim tab As WinForm.TabControl = e.Form.Controls("排产表") tab.TabPages(1).Visible = False For Each dr As DataRow In DataTables("权限设置").Select("用户名 = \'" & _username & "\' And 窗口名 = \'" & e.form.Name & "\'") Dim c = e.form.Controls(dr("按钮权限")) If typeof c Is winform.Table Then c.visible = Not dr("不可见") c.Table.allowEdit = Not dr("不可编辑") Else c.Visible = Not dr("不可见") c.Enabled = Not dr("不可编辑") End If Next If _UserName <> "管理员" Then Dim lst As new List(of String) Dim str() As String = {"保存","退出","刷新"} lst.AddRange(str) For Each sit As WinForm.StripItem In e.Form.Strips("工具栏1").Items sit.Visible = lst.Contains(sit.Text) Next End If
|
-- 作者:有点甜 -- 发布时间:2018/3/15 15:49:00 -- 如果你把afterLoad事件代码删除掉,打开窗口还慢不慢?
如果还慢,把sizeChanged等窗口事件代码也删除。
如果还慢,就应该是你窗口表加载了太多数据导致的。 |