首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

vb6 activate deactivate事件有关问题

2012-04-24 
vb6 activate deactivate事件问题dim i as integerPrivate Sub Command1_Click()Print iEnd SubPrivate Su

vb6 activate deactivate事件问题
dim i as integer
Private Sub Command1_Click()
Print i
End Sub

Private Sub Form_Activate()
MsgBox "hello"
i = i + 1
'Form1.BackColor = RGB(255 * Rnd(), 255 * Rnd(), 255 * Rnd())
End Sub

Private Sub Form_Deactivate()
MsgBox "bye-bye"
Form1.BackColor = RGB(255* Rnd(), 255 * Rnd(), 255 * Rnd())
End Sub

根据教材上说明,activate deactivate应该在窗口每次切换都后会执行,为何我测试时activate就第一次执行后,后面都不执行,而deactivate就根据一次也不执行?
请高手解答一下谢谢

[解决办法]
MSDN说:
Activate 和 Deactivate 事件仅当驻点在一个应用程式内移动时才发生。在另一个应用程式中将驻点移向或移离一个物件时,不会触发任何一个事件。当一个物件释放时,不会发生 Deactivate 事件。

制作一 Project,
内置"Form1"与"Form2",

里头都加上:
Private Sub Form_Activate()
Debug.Print "Activate1_Form1" '或"Form2"
End Sub

Private Sub Form_Deactivate()
Debug.Print "Deactivate_Form1" '或"Form2"
End Sub

启动Form1与Form2,
来回切换点击,
就能在DebugWindow里看到回应了。

热点排行