vb窗体所有事件

标签:
教育 |
分类: VB编程笔记 |
(1)Click 事件
在程序运行时单击窗体内的某个位置,Visual
Basic将调用窗体的Form_Click事件。如果单击的是窗体内的控件,则只能调用相应控件的Click事件。Click事件:标题栏显示“鼠标单击”,窗体显示"欢迎使用VB"
Private Sub Form_Click()
Caption = "鼠标单击"
Print "欢迎使用VB"
End Sub
(2)DblClick 事件
程序运行时双击窗体内的某个位置,就触发了两个事件,第一次按动鼠标时,触发Click事件,第二次产生DblClick事件。DblClick 事件:标题栏显示“双击窗体” ,清除背景图。
Private Sub Form_DblClick()
Caption = "鼠标双击"
Picture = LoadPicture("")
Print "结束使用VB"
End Sub
(3)
在程序运行时,当窗体被装入工作区时开始为Initialize之后才触发它的Load事件。所以该事件通常用来在启动应用程序时,对控件属性和变量初始化
Private Sub Form_Load()
Caption = "装入窗体"
Picture = LoadPicture ( App.Path + "\window.jpg")
FontSize = 48
FontName = "隶书"
Print "装入窗体"
End Sub
(4) Unload事件
卸载窗体时触发该事件。
(5) Resize事件
当窗体大小发生改变时,将触发一个Resize事件。
6)Activate
Activate
Deactivate
7)MouseDown事件:按下鼠标任意键时产生
8)MouseMove事件:按下鼠标任意键,并移动鼠标时产生。
9)MouseUp事件:放开鼠标任意键时产生。
Private Sub
Form_MouseDown(Button As Integer, Shift As Integer, X As
Single,
Private Sub Form_MouseMove(Button As
Integer, Shift As Integer, X As
Single,
Private Sub Form_MouseUp(Button As
Integer, Shift As Integer, X As
Single,
由上可见,上述3个事件的参数都是一样的,说明如下:
Button参数:表示按下的鼠标是哪一个键。1表示按下鼠标左键,2表示按下鼠标右键,4表示按下鼠标的中间键。
X、Y参数:表示鼠标光标所在的坐标值。
10)DragDrop事件:鼠标点住某一对象并拖动,直到放开鼠标键时才发生该事件,在拖放过程中,不发生DragDrop事件。
l
l
l
(11)KeyDown事件和KeyUp事件
按下键盘上的任意一个键,就会引发当前具有焦点的对象的KeyDown事件。释放时,则会引发该对象的KeyUp事件。
以窗体为例,KeyDown事件和KeyUp事件的语法如下:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
①Keycode参数
KeyCode参数是一个整数,返回所按键的键码值。键码值是以“键”为准。例如,由于大写字母和小写字母使用同一键,因此“A”和“a”的键码值是相同的。又如大键盘上的数字“1”和小建盘上的数字“1”,虽然是同一数字,但由于键不同,它们的键码值也不相同。常用键的键码值如表4-1所示:
表4-1
http://hiphotos.baidu.com/huanhuanxiaozhua/pic/item/2da89e583b17d0ad810a1864.jpg
②Shift参数
Shift参数是一个整数值,返回Shift、Ctrl、Alt的状态。只有检查此状态才能判断输入的是大写还是小写字母。
Shift参数用来判断是否按下了键盘上的Shift、Ctrl和Alt,或这3个键的任意组合,其对应的关系如表4-2所示:
表4-2 Shift的取值和Shift、Ctrl和Alt组合状态的对应关系
http://hiphotos.baidu.com/huanhuanxiaozhua/pic/item/30e176db9f3cee4ad1164e7c.jpg
下面的代码将测试你当前按下的键,并通过消息框告诉你。
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
Dim ShiftKey As Integer
ShiftKey = Shift And
7
Select Case ShiftKey
End Select
End Sub
(12)KeyPress事件
按下键盘上与ASCII字符对应的键时,触发KeyPress事件。KeyPress事件能识别的ASCII字符包括:字母键、数字键、标点符号键以及Enter键、Tab键和Backspace键。也就是说,在键盘上除了按这些键以外,按其它键不会引发KeyPress事件。
ASCII码值是以按键上的字符为准。同一按键上的字符有大小之分,所以按下同一个键时,ASCII码值是不一样的。例如,“A”和“a”的ASCII码值不一样。
以窗体为例,KeyPress事件的语法是:
Private Sub Form_KeyPress (KeyAscii As Integer)
End Sub
参数KeyAscii是一个整数,返回所按键的ASCII码值。借助字符的ASCII码值来判断用户按下的是哪一个键。
常用键的键码值和ASCII码值分别如表4-3所示:
表4-3
http://hiphotos.baidu.com/huanhuanxiaozhua/pic/item/6413f900904986abe850cd76.jpg
Private Sub Text1_KeyPress(KeyAscii As Integer)
MsgBox KeyAscii
End Sub
当敲击一个有ASCII码值的键时,会同时引发这三个事件,它们发生的顺序如下:
Intialize 事件之后发生Load 事件
Activate 事件之后发生 GotFocus 事件
Unload
LostFocus 事件之后发生 Deactivate事件
其余事件详细参照此网页
http://residence.educities.edu.tw/vbtester/web_image/obj_events.htm