Activate、Deactivate 事件
Activate -当一个对象成为活动窗口时发生。
Deactivate -当一个对象不再是活动窗口时发生。
语法
Private Sub object_Activate( )
Private Sub object_Deactivate( )
object 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。
说明
一个对象可以通过诸如单击它,或使用代码中的 Show 或 SetFocus 方法之类的用户操作而变成活动的。
Activate 事件仅当一个对象可见时才发生。例如,除非使用 Show 方法或将窗体的 Visible 属性设置为 True,否则,一个用 Load 语句加载的窗体是不可见的。
Activate 和 Deactivate 事件仅当焦点在一个应用程序内移动时才发生。在另一个应用程序中将焦点移向或移离一个对象时,不会触发任何一个事件。当一个对象卸载时,不会发生 Deactivate 事件。
Activate 事件在 GotFocus 事件之前发生,LostFocus 事件在 Deactivate 事件之前发生。
对 MDI 子窗体来说,这些事件仅当焦点从一个子窗体改变到另一个子窗体时才会发生。例如,在一个带有两个子窗体的 MDIForm 对象中,当焦点在子窗体之间移动时,它们能接收这些事件。然而,当焦点在一个 MDI 子窗体和一个非 MDI 子窗体之间移动时,父 MDIForm 将接收 Activate 和 Deactivate 事件。
如果一个由 Visual Basic 建立的 .exe 文件显示一个对话框,此对话框也是由建立在 Visual Basic 中的一个 .dll 文件所创建的,那么.exe 文件的窗体将获得 Deactivate 和 LostFocus 事件。这可能是不期望的,因为下列情况下不应获得 Deactivate 事件:
如果对象是一个过程之外的部件。
如果对象不是用 Visual Basic 编写的。
在开发环境中调用一个 Visual Basic 建立中的 DLL 时。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。