以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  动态加载表的第一次不正常问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=69811)

--  作者:supwork
--  发布时间:2015/6/11 11:28:00
--  动态加载表的第一次不正常问题

项目使用动态加载表结构及数据后,启动速度满意了

 

但是在窗口中使用动态加载表结构功能后出现新的问题,在窗口AFTERLOAD事件中写这个代码

If DataTables.Contains("字段列表") = False Then \'如果字段列表没有加载
    DataTables.Load("字段列表") \'加载表

    DataTables("字段列表").GlobalHandler.KeyDown = True   
End If

 

第一次进入该窗口,即 要首次加载该表时,窗口打开 了但是表还没有加载,显示的为一张空表,第二次打开此窗口才正常

 

如果 接着在事件 中使用了 加载条件,则报错 该字段不存在(即代码执行到此,表还没有加载)

 

如何解决? 难道目前非要用代码在打开窗口前加载该表?


--  作者:大红袍
--  发布时间:2015/6/11 11:42:00
--  

 是的,必须在open之前就加载表。

 

 不然,你可以这样做,打开窗口两次呗,第一次,加载表,然后close,然后再open自己

 

If DataTables.Contains("表C") = False Then
    msgbox("准加载表C")
    DataTables.Load("表C") \'加载表

    e.Form.Close
    e.Form.Open
    Return
Else
    msgbox("表C已经加载")
End If