当前位置:K88软件开发文章中心编程语言.NET.NET02 → 文章内容

VB.Net - 事件处理

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-15 15:59:11

由 yiyohunter 创建,youj 最后一次修改 2016-12-12 事件基本上是一个用户操作,如按键,点击,鼠标移动等,或某些事件,如系统生成的通知。 应用程序需要在事件发生时对其进行响应。单击按钮,或在文本框中输入某些文本,或单击菜单项,都是事件的示例。 事件是调用函数或可能导致另一个事件的操作。 事件处理程序是指示如何响应事件的函数。VB.Net是一种事件驱动的语言。 主要有两种类型的事件: 鼠标事件 Mouse events键盘事件 Keyboard events处理鼠标事件鼠标事件发生与鼠标移动形式和控件。以下是与Control类相关的各种鼠标事件: MouseDown -当按下鼠标按钮时发生MouseEnter -当鼠标指针进入控件时发生 MouseHover -当鼠标指针悬停在控件上时发生 MouseLeave -鼠标指针离开控件时发生 MouseMove -当鼠标指针移动到控件上时MouseUp -当鼠标指针在控件上方并且鼠标按钮被释放时发生 MouseWheel -它发生在鼠标滚轮移动和控件有焦点时鼠标事件的事件处理程序获得一个类型为MouseEventArgs的参数。 MouseEventArgs对象用于处理鼠标事件。它具有以下属性: Buttons-表示按下鼠标按钮 Clicks-显示点击次数 Delta-表示鼠标轮旋转的定位槽的数量 X -指示鼠标点击的x坐标Y -表示鼠标点击的y坐标示例下面是一个例子,它展示了如何处理鼠标事件。执行以下步骤: 在表单中添加三个标签,三个文本框和一个按钮控件。 将标签的文本属性分别更改为 - 客户ID,名称和地址。 将文本框的名称属性分别更改为txtID,txtName和txtAddress。 将按钮的文本属性更改为“提交”。 在代码编辑器窗口中添加以下代码: Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load ' Set the caption bar text of the form. Me.Text = "tutorialspont.com" End Sub Private Sub txtID_MouseEnter(sender As Object, e As EventArgs)_ Handles txtID.MouseEnter 'code for handling mouse enter on ID textbox txtID.BackColor = Color.CornflowerBlue txtID.ForeColor = Color.White End Sub Private Sub txtID_MouseLeave(sender As Object, e As EventArgs) _ Handles txtID.MouseLeave 'code for handling mouse leave on ID textbox txtID.BackColor = Color.White txtID.ForeColor = Color.Blue End Sub Private Sub txtName_MouseEnter(sender As Object, e As EventArgs) _ Handles txtName.MouseEnter 'code for handling mouse enter on Name textbox txtName.BackColor = Color.CornflowerBlue txtName.ForeColor = Color.White End Sub Private Sub txtName_MouseLeave(sender As Object, e As EventArgs) _ Handles txtName.MouseLeave 'code for handling mouse leave on Name textbox txtName.BackColor = Color.White txtName.ForeColor = Color.Blue End Sub Private Sub txtAddress_MouseEnter(sender As Object, e As EventArgs) _ Handles txtAddress.MouseEnter 'code for handling mouse enter on Address textbox txtAddress.BackColor = Color.CornflowerBlue txtAddress.ForeColor = Color.White End Sub Private Sub txtAddress_MouseLeave(sender As Object, e As EventArgs) _ Handles txtAddress.MouseLeave 'code for handling mouse leave on Address textbox txtAddress.BackColor = Color.White txtAddress.ForeColor = Color.Blue End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) _ Handles Button1.Click MsgBox("Thank you " & txtName.Text & ", for your kind cooperation") End SubEnd Class当使用Microsoft Visual Studio工具栏上的“开始”按钮执行并运行上述代码时,将显示以下窗口: 尝试在文本框中输入文字,并检查鼠标事件: 处理键盘事件以下是与Control类相关的各种键盘事件: KeyDown -当按下一个键并且控件具有焦点时发生KeyPress -当按下一个键并且控件具有焦点时发生KeyUp -当控件具有焦点时释放键时发生KeyDown和KeyUp事件的事件处理程序获得一个类型为KeyEventArgs的参数。此对象具有以下属性: Alt -它指示是否按下ALT键/ p> Control-它指示是否按下CTRL键 Handled-它指示事件是否被处理 KeyCode- 存储事件的键盘代码 KeyData-存储事件的键盘数据 KeyValue -存储事件的键盘值 Modifiers-指示按下哪个修饰键(Ctrl,Shift和/或Alt) Shift-表示是否按下Shift键KeyDown和KeyUp事件的事件处理程序获得一个类型为KeyEventArgs的参数。此对象具有以下属性: Handled-指示KeyPress事件处理 KeyChar -存储对应于按下的键的字符示例让我们继续前面的例子来说明如何处理键盘事件。 代码将验证用户为其客户ID和年龄输入一些数字。 添加一个带有文本属性为“Age”的标签,并添加一个名为txtAge的相应文本框。 添加以下代码以处理文本框txtID的KeyUP事件。 Private Sub txtID_KeyUP(sender As Object, e As KeyEventArgs) _ Handles txtID.KeyUp If (Not Char.IsNumber(ChrW(e.KeyCode))) Then MessageBox.Show("Enter numbers for your Customer ID") txtID.Text = " " End IfEnd Sub添加以下代码以处理文本框txtID的KeyUP事件。 Private Sub txtAge_KeyUP(sender As Object, e As KeyEventArgs) _ Handles txtAge.KeyUp If (Not Char.IsNumber(ChrW(e.keyCode))) Then MessageBox.Show("Enter numbers for age") txtAge.Text = " " End IfEnd Sub当使用Microsoft Visual Studio工具栏上的“开始”按钮执行并运行上述代码时,将显示以下窗口: 如果将age或ID的文本留空,或输入一些非数字数据,则会出现一个警告消息框,并清除相应的文本:

VB.Net - 事件处理