我在这里学编程 索引篇 共55页[1 2 3 4 5 6 7 > » <... 最后一页]

鼠标点击事件

_Click(

此事件是在一个对象上按下然后释放一个鼠标按钮时发生。它也会发生在一个控件的值改变时。

对一个 Form 对象来说,该事件是在单击一个空白区或一个无效控件时发生。对一个控件来说,这类事件的发生是当:

用鼠标的左键或右键单击一个控件。对 CheckBox, CommandButton, Listbox 或 OptionButton 控件来说,Click 事件仅当单击鼠标左键时发生。

通过按下箭头键或者单击鼠标按钮,对 ComboBox 或 ListBox 控件中的项目进行选择。

当 CommandButton,OptionButton 或 CheckBox 控件具有焦点时,按下 SPACEBAR 键。

当窗体带有其 Default 属性设置为 True 的 CommandButton 控件时,按下 ENTER 键。

当窗体带有一个 Cancel 按钮 — 其 Cancel 属性设置为 True 的 CommandButton 控件时,按下 ESC 键。

对控件按下一个访问键。例如,如果一个 CommandButton 控件的标题是 "&Go",则按下 ALT+G 键可触发该事件。
也可在代码中触发 Click 事件,通过:
将一个 CommandButton 控件的 Value 属性设置为 True。
将一个 OptionButton 控件的 Value 属性设置为 True。
改变一个 CheckBox 控件的 Value 属性的设置。

语法:
Private Sub Form_Click( )
Private Sub object_Click([index As Integer])

index 一个整数,用来唯一地标识一个在控件数组中的控件。

说明:
通常,将一个 Click 事件过程附加到一个 CommandButton 控件,Menu 对象或 PictureBox 控件上用来执行命令或类似命令的操作。对其它可应用的控件来说,使用这个事件来触发一个动作以响应控件中的变化。

可用一个控件的 Value 属性从代码中测试该控件的状态。单击一个控件除了产生 Click 事件以外还可产生 MouseDown 和 MouseUp 事件。这三种事件发生的顺序根据控件的不同而不同。例如,对 ListBox 和 CommandButton 控件来说,这些事件按下列顺序发生:MouseDown、Click、MouseUp。但对 FileListBox,Label 或 PictureBox 控件来说,这些事件按下列顺序发生:MouseDown、MouseUp 和 Click。当给这些相关的事件附加事件过程时,要确保它们的操作不互相冲突。如果在应用程序中事件发生的顺序是重要的,则应对控件进行测试以确定事件的顺序。

注意 为区别鼠标的左、中、右按钮,应使用 MouseDown 和 MouseUp 事件。

如果在 Click 事件中有代码,则 DlbClick 事件将永远不会被触发,因为 Click 事件是两个事件中首先被触发的事件。其结果是鼠标单击被 Click 事件截断,从而使 DblClick 事件不会发生。

例:在本例中,每单击一次 PictureBox 控件时,它都沿对角线方向在窗体中移动。要尝试这个例子,先将代码粘贴到窗体的声明部分,该窗体的左下角处有一个 PictureBox 控件,然后按 F5 键并单击 PictureBox。

Private Sub Picture1_Click ()
Picture1.Move Picture1.Left + 750, Picture1.Top - 550
End Sub

_DblClick ( )

当在一个对象上按下和释放鼠标按钮并再次按下和释放鼠标按钮时,该事件发生。

对于窗体而言,当双击被禁用的控件或窗体的空白区域时,DblClick 事件发生。对于控件而言,DblClick 事件在以下情形下发生:
用鼠标左键双击控件。
双击 Style 属性设置为 1(Simple) 的 ComboBox 控件中的项目,或者在 FileListBox 、 ListBox 、 DataCombo或 DataList控件中的项目。

语法:
Private Sub Form_DblClick ( )
Private Sub object_DblClick (index As Integer)

index 如果控件在控件数组内,则这个 index 值就用来标识该控件。

说明:
如果控件在一个控件数组内,则这个 Index 参数唯一地标识这个控件。可以使用 DblClick 事件过程执行一个隐式操作,如双击图标来打开一个窗口或文档。也可用这类过程执行单一操作的多个步骤,例如用双击在列表框中选定一项并关闭对话框。

要在 Visual Basic 中产生这类快捷效果,可以使用带有缺省按钮的列表框的或叠层排列文件列表框的 DblClick 事件过程;所谓缺省按钮就是 Default 属性设置为 True 的 CommandButton 控件。作为列表框 DblClick 事件过程的一部分,只需简单调用缺省按钮的 Click 事件。

对于那些接收 Mouse 事件的对象,事件按这样的次序发生:MouseDown, MouseUp, Click, DblClick 和 MouseUp。

如果 DblClick 在系统双击时间限制内没有出现,则对象识别另一个 Click 事件。双击时间限制可以变化,因为用户可在控制面板设置双击速度。当与这些相关事件过程打交道时,必须确保它们的活动不发生冲突。不接受 DblClick 事件的控件可能接受两次单击而不是 DblClick 事件。

调试事件时,不要使用 MsgBox 语句显示事件何时发生,因为这样做将会干扰许多事件的正常功能。(例如,Click 事件中的 MsgBox 将会阻止 DblClick 事件的发生。) 而应该用 Debug.Print 来显示事件发生的顺序。

注意 要想区别鼠标的左、右、中按钮,使用 MouseDown 和 MouseUp 事件。

例:无论是通过单击 CommandButton 控件还是双击列表项,本范例将显示 TextBox 控件中选定的列表项。要试用此例,将代码粘贴包含 ListBox 控件、TextBox 控件和 CommandButton 控件的 Form 对象的声明部分。然后运行此例并单击 CommandButton 控件或双击在 ListBox 控件中的一项。

Private Sub Form_Load ()
List1.AddItem "John" ' 添加列表框项。
List1.AddItem "Paul"
List1.AddItem "George"
List1.AddItem "Ringo"
End Sub

Private Sub List1_DblClick ()
Command1.Value = True ' 触发 Click 事件。
End Sub

Private Sub Command1_Click ()
Text1.Text = List1.Text ' 显示选定。
End Sub
 

 

我在这里学编程 索引篇 共55页[1 2 3 4 5 6 7 > » <... 最后一页]