使程序响应用户:创建事件处理程序

更新:2007 年 11 月

在本课中,您将学习如何创建事件处理程序。

在前面的课程中,您知道了控件具有属性、方法和事件并且用于创建用户界面。事件是控件上可能发生的相关事情。例如,可以单击控件,向其中键入文本,鼠标指针可以移过它,等等。

当发生某个相关事情时,控件会引发事件。这意味着它给程序发送一个信号,使其知道发生了某些事情。然后程序检查自己是否有方法处理该事件。这类方法称作“事件处理程序”。当单击按钮时运行的方法就属于这类方法,比如您在与用户交互:使用按钮中创建的方法。

控件可以引发各种类型的事件,但对于每个控件来说,始终存在一个默认事件。您可以为各种控件事件创建事件处理程序。在本课中,您将创建事件处理程序以处理按钮的默认事件,即 Click 事件。此事件是单击按钮时发生的事件。紧接着,将创建事件处理程序来处理按钮的 MouseEnterMouseLeave 事件。这些事件是当鼠标移过控件时发生的事件。

试一试!

处理 Click 事件

  1. 在“文件”菜单上单击“新建项目”。

  2. 在“新建项目”对话框的“模板”窗格中,单击“Windows 应用程序”。

  3. 在“名称”框中键入 EventHandler,并单击“确定”。

    一个新的 Windows 窗体项目随即打开。

  4. 将一个 Button 控件从“工具箱”中拖动到窗体上。

  5. 在“属性”窗口中,将 AutoSize 属性设置为 True。

  6. 在“视图”菜单中单击“代码”以打开代码编辑器。

    注意在代码编辑器的正上方有两个下拉框。除“Form1”、“(常规)”和“(Form1 事件)”之外,左边的框中还包含窗体上所有控件的列表。右边的框中列出了左边框中所列项的每个可用事件。

  7. 在左边的框中,单击“Button1”。

  8. 在右边的框中,单击“Click”。

    一个名为 Button1_Click 的新的事件处理程序出现在代码编辑器中。

    说明:

    通过双击窗体上的控件,可以为该控件输入默认事件处理程序。

  9. 在 Button1_Click 事件处理程序中,键入以下代码。

    MsgBox("You clicked the button")
    
  10. 按 F5 运行该应用程序。当单击“Button1”时,会出现一个消息框。

添加其他事件处理程序

可以在其他事件处理程序中为同一控件编写代码。例如,当用户将鼠标指针移动到某个按钮上方时,可以更改此按钮上出现的文本。

处理 MouseEnter 事件

  1. 在代码编辑器中,确保在左侧的下拉框中选择了“Button1”,然后在右侧的下拉框中单击 MouseEnter

    一个名为 Button1_MouseEnter 的新的事件处理程序出现在代码编辑器中。

  2. 在 Button1_MouseEnter 事件处理程序中,键入以下代码。

    Button1.Text = "The Mouse has entered"
    

    按 F5 运行该应用程序。使鼠标指针经过该按钮。请注意,当鼠标指针经过“Button1”时,按钮上的文本会发生变化。

您可能注意到在上一例中,虽然 Button1 的文本在鼠标指针经过时发生变化,但是鼠标指针离开时该文本并未还原。如果希望文本在鼠标不再停留在按钮上时发生变化,必须处理 MouseEnter 事件和 MouseLeave 事件。

处理 MouseLeave 事件

  1. 在代码编辑器中,确保在左侧的下拉框中选择了“Button1”,然后在右侧的下拉框中单击 MouseLeave

    一个名为 Button1_MouseLeave 的新的事件处理程序出现在代码编辑器中。

  2. 在 Button1_MouseLeave 事件处理程序中键入下面的代码。

    Button1.Text = "The mouse has left"
    
  3. 按 F5 运行该应用程序。

    现在,当鼠标指针经过该按钮时,文本变为 The mouse has entered,而当鼠标指针不再停留在该按钮上时,文本变为 The mouse has left。

后续步骤

在本课中,您学习了如何使用代码编辑器创建事件处理程序。现在,您可以继续本系列中的下一课获取用户选项:使用复选框和单选按钮,或者通过详细了解:共享事件处理程序查看事件处理程序。如果您选择第二个选项,应该保存 EventHandler 项目以便在那一课中使用。

请参见

参考

Label 控件概述(Windows 窗体)

TextBox 控件概述(Windows 窗体)

其他资源

创建程序的可视外观:Windows 窗体介绍

控件属性、方法和事件的更改(针对 Visual Basic 6.0 用户)