Foxtable(狐表)用户栏目专家坐堂 → 打开程序慢


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

主题:打开程序慢

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


加好友 发短信
等级:小狐 帖子:372 积分:2548 威望:0 精华:0 注册:2013/6/6 6:20:00
打开程序慢  发帖心情 Post By:2013/10/10 22:49:00 [只看该作者]

开发的程序滚动条竟然要滚动12次,跟打开以前的电脑一样慢?有没有解决的办法???
在滚动的时候都加载或检测什么呢?有没有可能直接去掉这一步?或者尽可能优化下???

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/10/10 23:36:00 [只看该作者]

 需要优化程序了,应该是加载的数据较多。试试动态加载数据,动态加载表。


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/10/11 8:15:00 [只看该作者]


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


加好友 发短信
等级:小狐 帖子:372 积分:2548 威望:0 精华:0 注册:2013/6/6 6:20:00
  发帖心情 Post By:2013/10/11 11:59:00 [只看该作者]

谢谢,如果内部表或外部表在BeforeLoadInnerTable和BeforeLoadOuterTable的Cancel不设置的话默认都要在项目启动中加载数据的吗???

加载数据代码写在哪里最好??项目事件AfterOpenProject ?窗体AfterLoad? 还是点击按钮的Click事件中?还是上面的BeforeLoadInnerTable和BeforeLoadOuterTable中??





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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/10/11 12:01:00 [只看该作者]

这个就根据你自身需求而定了.

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/10/11 12:01:00 [只看该作者]

你什么时候需要用到,就写到什么地方去. 比如打开某个窗口才用到某个表,平时用不到,那就放到窗口的ALterload事件

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


加好友 发短信
等级:小狐 帖子:372 积分:2548 威望:0 精华:0 注册:2013/6/6 6:20:00
  发帖心情 Post By:2013/10/11 12:15:00 [只看该作者]

滚动条多少次算正常的。我按上面的设置后现在是8次
另外登陆窗口确定后进入主界面会有些滞后,给人产生程序没有的感觉?这个是什么原因?

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


加好友 发短信
等级:小狐 帖子:372 积分:2548 威望:0 精华:0 注册:2013/6/6 6:20:00
  发帖心情 Post By:2013/10/11 12:18:00 [只看该作者]

我有一个窗体用了Table控件用Fill方法加载外部数据,用这个Fill好?还是建立一个外部表,然后Table用Load方法?这两个方法哪个效率会比较高??

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


加好友 发短信
等级:小狐 帖子:372 积分:2548 威望:0 精华:0 注册:2013/6/6 6:20:00
  发帖心情 Post By:2013/10/11 12:24:00 [只看该作者]

我不手动建立一个外部表的话,那么在BeforeLoadOuterTable设置的下面的事件代码是不是就无效的??




If e.DataTableName = "订单" Then
    e.Cancel = True '打开项目的时候不加载此表
    e.SelectString = "Select * From {订单} Where [_Identify] Is Null" '设置加载条件,注意如果主键不是_Identify,请改为实际的主键名称

End
 If


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


加好友 发短信
等级:小狐 帖子:372 积分:2548 威望:0 精华:0 注册:2013/6/6 6:20:00
  发帖心情 Post By:2013/10/11 12:38:00 [只看该作者]

谢谢bin和狐爸   憋了很久了,索性问个明白!

由于连接到外部表,在测试的时候突然断开外网,程序就死掉一样,点什么都没反应,重新开启网络也没用,只有关掉重启,这个有没有好的解决方法?

是不是在每次加载数据的时候TryConnectHost下还是通过下面的代码判断是否能连到数据源??

 Dim s As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\data\Northwind.mdb;Persist Security Info=False"
If 
Connections.TryConnect(s) = False Then
    MessageBox.Show("数据源无法连通!"
)
End If



 回到顶部