vb 为什么窗口未显示就执行activate事件了?

来源:百度知道 编辑:UC知道 时间:2024/06/25 00:17:21
vb 为什么窗口未显示就执行activate事件了?

奇怪,怎么窗口还没打开就执行activate事件?我可不想他做load 事件!
为什么会这样?
激活是什么意思?
晕,您那样说,好象不懂VB
activate事件不是每次激活时发生的

电脑速度有些慢吧,Active是指窗体被激活,这时窗体不一定已经显示,只是被激活了。

补:激活是指一个窗口获得了活动使用权。
一般来说,标题栏由灰色变成蓝色,就是被激活了。

贴出相关代码来看看

你好,因为窗体的Activate事件发生在Paint事件之前
所以你会觉得Activate事件被触发时窗体还没显示出来
另外Activate事件与Load事件不同,它确实可以被触发多次,有一点类似GotFocus事件

具体测试方法
为Form1的Activate和Paint事件分别增加不同的Msgbox以区别
新增一个窗体form2
在form1中添加一个按钮,写入代码 form2.show 1 '后边加空格1
运行,点击按钮,查看两个事件的激活顺序以及Activate事件被多次触发