使用 PictureBox 控件

PictureBox 控件被用来显示图形,作为其它控件的容器,显示图形方法的输出或显示 Print 方法输出的文本。

图 7.41   PictureBox 控件

 PictureBox 控件和 Image 控件相似,每个控件都可用来显示应用程序中的图形─ 每个都支持相同的图形格式。但是,PictureBox 控件包含了 Image 控件不具有的功能,例如:作为其它控件的容器的功能和支持图形方法的功能。

详细信息 关于 PictureBox 控件的示例,请参阅“窗体、控件和菜单”中“使用 PictureBox 控件”。

支持的图形格式

PictureBox 控件可显示下述任何格式的图片文件:位图、图标、图元文件、增强型图元文件、JPEG 或 GIF 文件。

详细信息 关于这些图形格式详细的说明,请参阅本章前面的“使用 Image 控件”。

将图形加载到 PictureBox 控件中

在设计时从“属性”窗口中选定并设置 Picture 属性就可将图片加载到 PictureBox 控件中,也可在运行时用 Picture 属性或 LoadPicture 函数做到这一点。

Set Picture1.Picture = _
LoadPicture("c:\Windows\Winlogo.cur", vbLPLarge, vbLPColor)

您可能希望使用包含大小不同和颜色深度不同的图象以支持多种显示设备的独立图象的图标(.icon)和 游标(.cur)文件。LoadPicture 函数的设置允许您从.ico 或 .cur 文件中选择特定颜色深度和大小的图象。假如没有要求设置的准确匹配,LoadPicture将加载可获得的最匹配图象。

为清除 PictureBox 控件中的图形,应使用不指定文件名的 LoadPicture 函数。例如:

set Picture1.Picture = LoadPicture

这将清除 PictureBox 控件,即使在设计时向 Picture 属性加载了图形亦如此。

使用剪贴板

设计时也可这样向 PictureBox 控件添加图形:从其它应用程序中复制图形后把它粘贴到 PictureBox 控件中。例如,有时可能希望添加由 Windows Paint 创建的位图图象。直接把图象复制到剪贴板,选定 PictureBox 控件,然后使用键盘快捷方式 CTRL+V 或使用“编辑”菜单的“粘贴”命令。

调整图片的大小

缺省时,加载到图片框中的图形保持其原始尺寸,这意味着如果图形比控件大,则超过的部分将被剪裁掉─ PictureBox 控件不提供滚动条。要使 PictureBox 控件自动调整大小以显示完整图形,应将其 AutoSize 属性设置为 True。这样控件将自动调整大小以适应加载的图形。

与 Image 控件不同, PictureBox 控件不能伸展图象以适应控件尺寸。

详细信息 关于使用图片框创建可滚动的图形视口的信息,请参阅本章前面的“ScrollBar 控件方案:创建可滚动的图形视口”。

用 PictureBox 控件作容器

可用 PictureBox 控件作为其它控件的容器。例如,因为可将 PictureBox 控件放置到 MDI 窗体的内部区域,所以通常用它手工创建工具条或状态条。

详细信息 关于用 PictureBox 控件作其它控件容器的详细信息,请参阅“创建用户界面”中的“创建 Toolbar”。

图形方法

图片框象窗体一样,可用来显示图象方法(例如 Circle、Line 和 Point)的输出。例如,将 PictureBox 控件的 AutoRedraw 属性设置为 True 后,就可用 Circle 方法在控件上绘制一个圆。

Picture1.AutoRedraw = True
Picture1.Circle (1200, 1000), 750 

将 AutoRedraw 设置成 True 后,可将图形方法的输出显示在控件上,而且,在调整 PictureBox 控件大小或移去隐藏图片框的对象重新显示图片框时,控件可自动重新绘制显示这些输出。

详细信息 关于在 PictureBox 控件使用图形方法的详细信息,请参阅“使用文本和图形”中的“使用图形方法”。

使用 Print 方法

将 AutoRedraw 属性设置为 True 并使用 Print 方法就可在 PictureBox 控件上输出文本。例如:

Picture1.Print "A text string"

使用 Print 方法时可修改字体样式和大小,也可使用 CurrentX、CurrentY、Height 和 Width 属性对齐图片框中的文本。

详细信息 请参阅“使用文本和图形”,以及“Print 方法”。