且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《Visual Basic 2012入门经典》----1.7 编写界面后面的代码

更新时间:2021-09-01 15:53:58

本节书摘来自异步社区《Visual Basic 2012入门经典》一书中的第1章,第7节,作者: 【美】James Foxall,译者: 翟剑锋 , 更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.7 编写界面后面的代码

Visual Basic 2012入门经典
为使程序能够执行操作和响应用户交互,必须为程序编写代码。Visual Basic是一款事件驱动的语言,这意味着代码将响应事件而执行。事件可能来自用户,如用户单击按钮触发其Click事件;也可能来自Windows本身(对事件的完整解释请参见第4章)。目前,该应用程序看起来不错,但并不能做任何事情。用户单击Select Picture按钮直到患上腕管综合症,也不会有什么事情发生,因为没有告诉程序当用户单击按钮时要做什么。现在按F5键来运行项目,便可以看到这一点。可以单击按钮,但它们不会做任何事情。完成后,关闭窗口返回设计模式。

下面编写代码来实现两项任务。首先,编写代码让用户浏览其硬盘来查找和选择图片文件,然后将文件显示在图片框中(这听起来比实际难得多)。其次,为Quit按钮添加代码,使得用户单击该按钮时关闭程序。

1.7.1 让用户浏览文件

要编写的第一段代码允许用户浏览其硬盘,选择一个图片文件,然后在PictureBox控件中查看选择的图片。这段代码在用户单击Select Picture按钮时执行,因此,它应添加到该按钮的Click事件中。

在设计视图中双击窗体中的控件时,该控件的默认事件将显示在代码窗口中。Button控件的默认事件是Click事件,这是因为单击是用户对按钮执行的最常见操作。现在,双击Select Picture按钮,在代码窗口中访问它的Click事件,如图1.12所示。


《Visual Basic 2012入门经典》----1.7 编写界面后面的代码

您访问事件时,Visual Basic将创建一个事件处理程序,事件处理程序本质上是一个模板过程,可在其中加入事件发生时要执行的代码。鼠标已放在代码过程中,因此,您所要做的便是添加代码。阅读完本书时,读者可以任意添加自己的代码,使应用程序按照您的意愿执行——大部分时候是这样的。现在,只需输入下面列出的代码。

养成为代码添加注释的习惯很重要。因此,读者要输入的第一条语句是一条注释。以撇号打头的语句表示这是注释;编译器不会处理这样的语句,因此可在撇号后输入任意文本。输入如下文本,然后按回车键:

' Show the open file dialog box.
要输入的下一语句触发窗体中OpenFileDialog控件的一个方法。可将方法理解为一种使控件执行某项功能的机制。ShowDialog()方法命令控件显示其“Open File”对话框,让用户选择文件。ShowDialog()方法返回一个值,指明操作成功与否,然后可将这个值与预定义的结果(DialogResult.OK)进行比较。这时不必关心发生了什么;本书后面将介绍所有这些细节,本章旨在让读者在实践中学习。简单地说,ShowDialog()方法被调用,让用户浏览文件。如果用户选择了文件,将执行更多代码。当然,使用“Open File”对话框比这个简单的示例中能做的更多,但这条简单的语句足以完成任务。输入下面的语句,并在行尾按回车键(不用担心大小写,Visaul Basic将为您更改大小写):

If ofdSelectpicture.ShowDialog = DialogResult.OK Then
注意:

用户输入以If打头的语句并按回车键后,Visual Basic将自动创建End If语句。如果用户再输入End If语句,将出现两条End If语句,导致代码无法运行。在这种情况下,应删除一条End If语句。第13章将全面而详细地介绍If语句。
接下来是另一条注释。当前光标位于以If打头的语句和End If语句之间,输入下面这一条语句,并在行尾按回车键:

' Load the picture into the picture box.
提示:

无需按Tab键或使用空格来缩进代码,Visual Basic将自动缩进代码。
下面这条语句位于If结构中(If语句和End If语句之间),它是真正将图片显示在图片框中的代码。

输入下面的语句然后按回车:

picShowPicture.Image = Image.FromFile(ofdSelectPicture.Filename)
除显示选定的图片外,应用程序还在标题栏中显示图片的路径和文件名。创建窗体时,您使用“属性”窗口修改窗体的Text属性。要创建动态的应用程序,需要在运行时不断地调整属性,而这是使用代码实现的。插入下面两条语句(在每行行尾按回车键):

``' Show the name of the file in the form's caption.
Me.Text = "Picture Viewer(" & ofdselectpicture.FileName & ")"``
输入所有代码后,编辑器应如图1.13所示。


《Visual Basic 2012入门经典》----1.7 编写界面后面的代码

1.7.2 使用代码终止程序

最后一小段代码是在用户单击Quit按钮时终止程序。为此,需要访问btnQuit按钮的Click事件处理程序。在代码窗口的顶部有两个选项卡。当前选项卡名为ViewerForm.vb。这个选项卡包含文件名为ViewerForm.vb的窗体的代码窗口;另一个选项卡名为ViewerForm.vb[Design],单击该选项卡将从代码视图切换到窗体设计器。如果单击该选项卡时发生错误,表明输入的代码有错误,需要将其编辑成与图1.13所示一致。窗体设计器出现后,双击Quit按钮来访问其Click事件。

在Quit按钮的Click事件处理程序中输入下列代码,在每行语句末尾按回车键:

``' Close the window and exit the application
Me.Close()``
注意:

Me.Close()语句关闭当前窗体。当程序中最后一个加载的窗体被关闭后,应用程序将完全终止自身的运行。创建更健壮的应用程序时,可能要在终止应用程序前执行各种清理工作,但在这个示例中,只需直接关闭窗体。
本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。