以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  在窗口中点按钮到下一行速度非常慢  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=80820)

--  作者:kaituozhe
--  发布时间:2016/2/2 18:16:00
--  在窗口中点按钮到下一行速度非常慢
在窗口中点按钮下行速度非常慢,代码是按帮助中的例子设置的,我看了一下,按下一行时会从第一行开始检索一直到最后一行,而且越往下越慢
--  作者:狐狸爸爸
--  发布时间:2016/2/2 18:18:00
--  
代码问题,用例子说话。
--  作者:kaituozhe
--  发布时间:2016/2/2 18:19:00
--  

With Tables("订单.订单明细")
    .Position = .Position +
1
End
With

这个按钮只有这一行代码,不知道是什么原因


--  作者:kaituozhe
--  发布时间:2016/2/2 18:24:00
--  
主表只有50行数据,有5个关联表,是关联表多的原因吗?我说的越往下越慢是10翻到11行要比从第1行翻到2行慢的多,翻一行得需要2、3分钟,真慢
--  作者:wyz20130512
--  发布时间:2016/2/2 19:16:00
--  
传实例看看。
--  作者:大红袍
--  发布时间:2016/2/2 19:23:00
--  

看看你的currentChanged事件(也就是切换行等事件)是否写有什么耗时的代码。注释掉代码看看是否还慢


--  作者:kaituozhe
--  发布时间:2016/2/2 19:28:00
--  

不知道是什么原因?我想从第10换到第11行,他会从第1行检索到第2行 从第1行检索到第3行 从第1行检索到第4行,以此类推,不知道是什么原因,也没有办法把这个例子给你上传


--  作者:大红袍
--  发布时间:2016/2/2 19:29:00
--  
注释掉currentchanged等事件的代码。
--  作者:kaituozhe
--  发布时间:2016/2/2 19:33:00
--  

在currentChanged有这个代码Functions.Execute("联动"),这个代码是在内部函数中

If Tables("汇总表").Current IsNot Nothing Then
    If DataTables.Contains("汇总表_Table1") Then
        Dim Filter As String = "汇总对象 = \'" & Tables("汇总表").Current("汇总对象") & "\'"
        DataTables("汇总表_table1").LoadFilter = Filter
        DataTables("汇总表_table1").Load
    End If
End If

 


--  作者:kaituozhe
--  发布时间:2016/2/2 19:34:00
--  
DataTables("汇总表_table1")类似此表有5个窗口5个表