分享

VBA窗体事件 | VBA实例教程

 gblhp 2015-02-16

除非注明,文章均为 战战如疯 原创,转载请保留链接: http://www./cat1/265.html,VBA交流群273624828。

今天来介绍几个窗体常用的事件,包括窗体的初始化、单击、关闭前、关闭后、鼠标点击等。

先来看窗体的初始化,初始化就是窗体刚打开时自动执行的程序,用的是Initialize,看例子:

Private Sub UserForm_Initialize()
MsgBox "执行初始化程序"
End Sub

这样的话每当你加载窗体就会先执行MsgBox语句,需要时换成你自己的语句就可以了。

再来看窗体的单击事件,Click,看代码:

Private Sub UserForm_Click()
MsgBox "你单击了窗体"
End Sub

当你在窗体上单击时会执行MsgBox语句,也是按需要换成你自己的。

再来看窗体的鼠标事件,即当你点击鼠标左右键或中间键时引发的动作,看代码:

Private Sub UserForm_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 Then
MsgBox "你点击了鼠标左键"
ElseIf Button = 2 Then
MsgBox "你点击了鼠标右键"
Else
MsgBox "你点击了中间键"
End If
End Sub

参数Button代表的是鼠标键,1代表左键,2代表右键,4代表中间键,Shift代表ctrl/shift/alt键,Shift返回1,ctrl返回2,shift+ctrl返回3,Atl按回4,这样就可以根据返回值判断你点了鼠标的哪些键或哪些组合键,从而运行不同的语句。

再来看关闭事件,即关闭之前运行的语句,看下面的代码

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then
Cancel = 1
MsgBox "请用Close按钮关闭"
End If
End Sub

QueryClose事件有两个参数,当参数Cancel>0时不允许用右上角的叉号关闭窗体,CloseMode是判断你关闭窗体的方式,0代码你是用右上角叉号关闭的。上面的代码判断你用叉号关闭时就将Cancel=1,这样就禁止了窗体关闭。

还可以设置窗体关闭之后发生的动作,

Private Sub UserForm_Terminate()
MsgBox "你已经关闭了窗体"
End Sub

上面的代码在窗体关闭之后提示你已经关闭了窗体。

示例文件下载地址:http://pan.baidu.com/s/1bnjHN7x

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多