Visual Basic 6 VB.Global.Load Sub 是如何工作的?
How Visual Basic 6 VB.Global.Load Sub works?
我有一个问题:我项目中的一个表单需要很长时间才能加载。情况:
通过使用调试器,我可以通过代码。当我到达带有 Load frmTest
的行(有一个特定的形式)时,大约需要 1.5 - 2 秒才能在 Form_Load 处理程序中继续。
我试图搜索一些文档,但失败了...好吧,至少找到了关于在 Form Load 事件触发之前 Load Sub 做什么的任何信息。
那么,VB.Global.Load 是如何工作的?
假设此 是 VB6(在那种情况下从未听说过 'VB.Global.Load'),请参阅 Life Cycle of Visual Basic Forms
可能出错的地方太多了。
这就是我分析这个案例的方式。
- 检查您是否有 Form_Initialize 方法,如果没有 - 创建它并检查延迟是在调用此方法之前还是之后。
- 检查您是否在表单级别上有任何私有字段。如果那里有重物,它们可能会在表单 Load 之前初始化,这可能会花费一些时间。对于 COM 对象尤其实际。
- 如果这种情况只发生在一个表格上,我会尝试了解这个确切表格的特别之处,如果需要,将所有东西移到地上以检测问题。
感谢@Alex K. 的回答:
The biggest job it does it to initialize all the controls/activex
components sited on the form (or anything in the global scope declared
As New) so if you have any third party ones then that's something to
investigate.
我有一个问题:我项目中的一个表单需要很长时间才能加载。情况:
通过使用调试器,我可以通过代码。当我到达带有 Load frmTest
的行(有一个特定的形式)时,大约需要 1.5 - 2 秒才能在 Form_Load 处理程序中继续。
我试图搜索一些文档,但失败了...好吧,至少找到了关于在 Form Load 事件触发之前 Load Sub 做什么的任何信息。
那么,VB.Global.Load 是如何工作的?
假设此 是 VB6(在那种情况下从未听说过 'VB.Global.Load'),请参阅 Life Cycle of Visual Basic Forms
可能出错的地方太多了。
这就是我分析这个案例的方式。
- 检查您是否有 Form_Initialize 方法,如果没有 - 创建它并检查延迟是在调用此方法之前还是之后。
- 检查您是否在表单级别上有任何私有字段。如果那里有重物,它们可能会在表单 Load 之前初始化,这可能会花费一些时间。对于 COM 对象尤其实际。
- 如果这种情况只发生在一个表格上,我会尝试了解这个确切表格的特别之处,如果需要,将所有东西移到地上以检测问题。
感谢@Alex K. 的回答:
The biggest job it does it to initialize all the controls/activex components sited on the form (or anything in the global scope declared As New) so if you have any third party ones then that's something to investigate.