显示图像:使用 PictureBox 控件
更新:2007 年 11 月
在本课中,您将学习如何使用 PictureBox 控件来显示图像,以及如何将一幅图片显示为窗体中的背景图像。
众所周知,一幅图片中的信息量相当于上千个词,而实际上许多程序也都用图片来传递信息。在 Visual Basic 中有若干方法可以显示图片,其中最常见的方法是使用 PictureBox 控件。
PictureBox 控件充当一个图片容器;您可以通过设置 Image 属性来选择要显示的图片。Image 属性可以在“属性”窗口中设置,或者您也可以编写代码,告诉程序显示哪幅图片。
PictureBox 控件的其他一些有用的属性包括 AutoSize 属性和 SizeMode 属性,前者确定 PictureBox 是否伸展以适合图片大小,后者可用于在 PictureBox 控件中伸展、居中对齐或者缩放图像。
在将图片添加到 PictureBox 控件之前,通常先将图片文件作为资源添加到项目中。一旦在项目中添加了某项资源,便可以根据需要任意重复使用该资源。例如,可以在多个位置显示同一图片。
试一试!
将图片作为资源添加
在“文件”菜单上单击“新建项目”。
在“新建项目”对话框的“模板”窗格中,单击“Windows 应用程序”。
在“名称”框中键入 Pictures,然后单击“确定”。
一个新的 Windows 窗体项目随即打开。
在解决方案资源管理器窗口中,双击“我的项目”节点以打开“项目设计器”。
在“项目设计器”中,单击“资源”选项卡。
单击“添加资源”,然后从下拉列表中选择“添加现有文件”。
“将现有文件添加到资源中”对话框随即打开。如果您没有看到图片文件,请浏览到包含图片的文件夹。
选择一个图像文件(带 .bmp、.gif 或 .jpg 文件扩展名的文件),然后单击“打开”。在本例中最好选择一幅小图片。
该图片将添加到项目中并出现在“资源管理器”窗口中。
重复前面两个步骤,将第二幅图片添加到项目中。
在“文件”菜单上,单击“关闭”。如果系统要求您保存更改,请单击“是”。
使用 PictureBox 控件显示图片
在“解决方案资源管理器”中,选择“Form1.vb”,然后在“视图”菜单中单击“设计器”。
将一个 PictureBox 控件从“工具箱”中拖动到窗体上。
在“属性”窗口中,单击 Image 属性旁的“…”按钮以打开“选择资源”对话框。
在“项”列表中,选择已添加的一幅图片,然后单击“确定”。
选择 SizeMode 属性并将其设置为 AutoSize。
注意 PictureBox 控件是如何自动调整大小以适合图片的。
在窗体中,双击 PictureBox 控件以在代码编辑器中打开 PictureBox1_Click 事件处理程序。
将下面的代码添加到 PictureBox1_Click 事件处理程序。
说明: 您必须将“MyPictureName2”替换为先前添加的第二幅图片的实际名称。
PictureBox1.Image = My.Resources.MyPictureName2
按 F5 运行程序。当窗体出现时,单击该图片以使第二幅图片出现。
在窗体中显示背景图像
除了在 PictureBox 控件中显示图片外,还可以将某个图片作为窗体的背景显示。窗体的 BackgroundImage 属性用于显示一幅图片,该图片出现在窗体中的任何其他控件后面,非常类似于 Windows 桌面的墙纸。
正如 Windows 使您能够选择是否居中、平铺、伸展墙纸以填满屏幕一样,可以使用 BackgroundImageLayout 属性在窗体中实现同样的功能。
提示: |
---|
其他许多控件(如 Panel、GroupBox 以及甚至 Button 控件)也具有 BackgroundImage 属性。试试看! |
试一试!
在窗体中显示背景图像
在“解决方案资源管理器”中,选择“Form1.vb”,然后在“视图”菜单中单击“设计器”。
单击窗体中 PictureBox 以外的任何部分以选择窗体。
在“属性”窗口中,单击 BackgroundImage 属性旁的“…”按钮以打开“选择资源”对话框。
从“项”列表中,选择一幅先前添加的图片,然后单击“确定”。
注意图片显示在窗体上 PictureBox 的后面,而且默认情况下是平铺的。
说明: 如果 PictureBox 控件中的图片太大,您可能就看不到背景图片。在这种情况下,可选择 PictureBox 控件并将其拖到窗体底部,使其不再覆盖背景图片。
选择 BackgroundImageLayout 属性并将其设置为 Stretch。
注意图片是如何伸展以填满整个窗体的。
双击该窗体以打开代码编辑器。
确认左侧的下拉框中选定了“Form1 事件”,然后在右侧的下拉框中单击“Click”。
将以下代码添加到 Form1_Click 事件处理程序中
If Me.BackgroundImageLayout = ImageLayout.Stretch Then Me.BackgroundImageLayout = ImageLayout.Center Else Me.BackgroundImageLayout = ImageLayout.Stretch End If
按 F5 运行程序。当窗体出现时,单击它以改变其布局。
后续步骤
在本课中,您学习了如何使用 PictureBox 控件来显示图像,以及如何使用窗体的 BackgroundImage 属性。在下一课中,您将学习如何创建菜单以便为用户提供选项。
下一课:给出用户选项:在设计时创建菜单