步骤 6:命名按钮控件

窗体上只有一个 PictureBox。当添加此控件时,IDE 自动将其命名为**“pictureBox1”。只有一个名为“checkBox1”的 CheckBox。很快,您将编写一些代码,并且这些代码将引用到上述的 CheckBox 和 PictureBox。因为上述每种控件都只有一个控件,所以当您在代码中看到“pictureBox1”“checkBox1”**时,应知道其中的含义。

说明说明

在 Visual Basic 中,任何控件名称的第一个字母默认是首字母大写,因此名称为“PictureBox1”“CheckBox1”等等。

窗体上包含四个按钮,IDE 将它们分别命名为**“button1”“button2”“button3”“button4”。只看这些按钮的当前名称,您并不知道哪个按钮是“关闭”按钮,哪个按钮是“显示图片”**按钮。这就是命名按钮控件很有用的原因了。

命名按钮控件

  1. 单击**“关闭”按钮。(如果您仍选择了所有按钮,请按 ESC 键取消选择。)在“属性”窗口中滚动,直到看到“(Name)”属性。(当属性按字母顺序排列时,“(Name)”属性位于顶部附近。)将此名称更改为“closeButton”**,如下图中所示。

    包含 closeButton 名称的“属性”窗口

    带有 closeButton 名称的“属性”窗口

    说明说明

    如果尝试将按钮的名称更改为“close Button”(在单词“close”和“Button”之间有一个空格),则 IDE 将显示错误消息“属性值无效”。控件名称中不允许使用空格和一些其他字符。

  2. 将其他三个按钮重命名为**“backgroundButton”“clearButton”“showButton”。可以通过单击“属性”**窗口中的控件选择器下拉列表,来验证这些名称。新的按钮名称将出现。

  3. 在“Windows 窗体设计器”中双击**“显示图片”按钮。当执行此操作时,IDE 将在主窗口中打开一个称为“Form1.cs”**选项卡的新选项卡,如下图中所示。

    使用 Visual C# 代码的 Form1.cs 选项卡

    包含 Visual C# 代码的 Form1.cs 选项卡

  4. 重点考虑这一部分的代码。

    Private Sub showButton_Click() Handles showButton.Click
    
    End Sub
    
    private void showButton_Click(object sender, EventArgs e)
    {
    }
    

    您需要查找一个称为 showButton_Click() 的方法。当您单击**“showButton”按钮时,IDE 添加了此方法。此方法包含单击“显示图片”**按钮时运行的代码。

    说明说明

    在本教程中,自动生成的 Visual Basic 代码进行了简化(删除了圆括号 () 之间的所有代码)。只要出现自动生成的代码,您都可以删除相同的代码。程序不管怎样都将工作。对于其余教程,任何自动生成的代码都将尽可能得到简化。

  5. 转到设计器选项卡(在 Visual C# 中为**“Form1.cs [设计]”选项卡,在 Visual Basic 中为“Form1.vb [设计]”选项卡),并双击“清除图片”**按钮。对于最后两个按钮,重复此操作。IDE 每次都会向窗体的代码中添加一个新方法。

  6. 若要再添加一个方法,请双击 Windows 窗体设计器中的 CheckBox 控件,以使 IDE 添加 checkBox1_CheckedChanged() 方法。每当用户选中或清除此复选框时都会调用此方法。

    说明说明

    当运行程序时,您经常要在代码编辑器和 Windows 窗体设计器之间进行移动。有了 IDE,就能够轻松地在项目中导航。使用“解决方案资源管理器”,通过双击“Form1.cs”(在 Visual C# 中)或“Form1.vb”(在 Visual Basic 中),打开“Windows 窗体设计器”。

    下面显示了您在代码编辑器中看到的新代码。

    Private Sub clearButton_Click() Handles clearButton.Click
    
    End Sub
    
    Private Sub backgroundButton_Click() Handles backgroundButton.Click
    
    End Sub
    
    Private Sub closeButton_Click() Handles closeButton.Click
    
    End Sub
    
    Private Sub CheckBox1_CheckedChanged() Handles CheckBox1.CheckedChanged
    
    End Sub
    
    private void clearButton_Click(object sender, EventArgs e)
    {
    }
    
    private void backgroundButton_Click(object sender, EventArgs e)
    {
    }
    
    private void closeButton_Click(object sender, EventArgs e)
    {
    }
    
    private void checkBox1_CheckedChanged(object sender, EventArgs e)
    {
    }
    
    说明说明

    您所添加的五个方法称为“事件处理程序”,原因是每当事件(如用户单击按钮或选择框)发生时程序都将调用这些方法。

    当您在 IDE 中双击某个控件时,IDE 会为该控件添加一个事件处理程序方法。例如,当双击某个按钮时,IDE 会为此按钮的 Click 事件(每当用户单击按钮时调用)添加一个事件处理程序。当双击某个复选框时,IDE 会为此复选框的 CheckedChanged 事件(每当用户选中或清除框时调用)添加一个事件处理程序。

    在为某个控件添加事件处理程序后,通过双击此控件,可以随时从 Windows 窗体设计器返回到此控件。

    说明说明

    生成程序时名称很重要,并且方法(包括事件处理程序)可以具有任何所需的名称。当使用 IDE 添加事件处理程序时,IDE 会基于控件的名称和正在处理的事件选择一个名称。例如,名为“showButton”的按钮的 Click 事件称为 showButton_Click() 事件处理程序方法。此外,通常会在方法名称后面添加一对左右圆括号 (),以清楚地表明正在讨论的对象是方法。

继续或查看