PictureBox 控件(针对 Visual Basic 6.0 用户)

来源:百度文库 编辑:神马文学网 时间:2024/06/03 13:51:59

Visual Basic 6.0 中的 PictureBox 控件在 Visual Basic 2005 中由 Windows 窗体 PictureBox 控件所取代。某些属性、方法、事件和常数的名称是不同的,在某些情况下,行为也有所不同。

概念差异

PictureBox 作为容器

Visual Basic 6.0 PictureBox 控件是一个容器控件,除了显示图片外,还可用于分组和显示其他控件。

Visual Basic 2005 PictureBox 控件不是容器控件;只能用于显示图片。如果需要容器控件,则可使用新的 Panel 控件替代 PictureBox 控件。

AutoSize 属性

在 Visual Basic 6.0 中,AutoSize 属性确定 PictureBox 控件是保留其设计时大小 (AutoSize = False) 还是动态调整大小以适合图片的尺寸 (AutoSize = True)。

在 Visual Basic 2005 中,AutoSize 属性替换为 SizeMode 属性;除了 NormalAutoSize 模式,还可居中对齐、拉伸或缩放图片。

图形属性和方法

在 Visual Basic 6.0 中,各种图形属性和方法都可用于在 PictureBox 控件上绘制线条、形状和文本。

在 Visual Basic 2005 中,控件不再具有图形属性或方法;但仍可使用 T:System.Drawing.Graphics 对象在 PictureBox 控件上进行绘制。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

其他差异

此外,还有许多适用于所有控件的概念差异,包括数据绑定、字体处理、拖放功能、帮助支持等方面的差异。有关更多信息,请参见适用于 Visual Basic 6.0 用户的 Windows 窗体概念。

PictureBox 控件的代码更改

下面的示例演示 Visual Basic 6.0 和 Visual Basic 2005 在编码方法上的不同之处。

显示图片的代码更改

下面的代码演示如何在运行时在 PictureBox 控件中显示图片。

  复制代码
' Visual Basic 6.0            Picture1.Picture = LoadPicture(App.Path & "\somepicture.jpg")
Visual Basic  复制代码
' Visual Basic 2005            PictureBox1.Image = System.Drawing.Bitmap.FromFile( _            My.Application.Info.DirectoryPath & "\somepicture.jpg")            

清除 PictureBox 控件的代码更改

下面的代码演示如何在运行时清除 PictureBox 控件,从而不显示图像。

  复制代码
' Visual Basic 6.0            Picture1.Picture = LoadPicture("")
Visual Basic  复制代码
' Visual Basic 2005            If Not (PictureBox1.Image Is Nothing) Then            PictureBox1.Image.Dispose()            PictureBox1.Image = Nothing            End If            

在 PictureBox 控件进行绘制的代码更改

下面的代码演示如何在运行时在 PictureBox 控件中心绘制一个直径为 40 像素的红色圆。

  复制代码
' Visual Basic 6.0            Private Sub Picture1_Paint            Dim x As Integer            Dim y As Integer            Picture1.ScaleMode = vbPixels            x = Picture1.ScaleWidth / 2            y = Picture1.ScaleHeight / 2            Picture1.Circle (x, y), 20, vbRed            End Sub
Visual Basic  复制代码
' Visual Basic 2005            Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e _            As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint            Dim radius As Integer = 20            Dim diameter As Integer = radius * 2            Dim x As Integer = (PictureBox1.Width / 2) - radius            Dim y As Integer = (PictureBox1.Height / 2) - radius            e.Graphics.DrawEllipse(Pens.Red, x, y, diameter, diameter)            End Sub            

PictureBox 控件属性、方法和事件的等效项

下面几个表列出了 Visual Basic 6.0 中的属性、方法和事件及它们的 Visual Basic 2005 等效项。具有相同的名称和行为的属性、方法和事件未予列出。如果适用,常数在属性或方法的下面缩进。除非另外说明,否则所有 Visual Basic 2005 枚举都映射到 System.Windows.Forms 命名空间。

此表提供相关主题的链接,这些主题对行为之间的差异进行说明。如果 Visual Basic 2005 中没有直接等效项,则提供指向介绍替换项的主题的链接。

属性

Visual Basic 6.0 Visual Basic 2005 等效项

Align

Dock

Appearance

新的实现。有关更多信息,请参见 Appearance 和 BorderStyle 属性(针对 Visual Basic 6.0 用户)。

AutoRedraw

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

AutoSize

SizeMode

BackColor

BackColor

注意

颜色在 Visual Basic 2005 中以不同方式处理。有关更多信息,请参见颜色行为(针对 Visual Basic 6.0 用户)。

BorderStyle

BorderStyle

注意

在 Visual Basic 6.0 中,默认值为 Fixed Single;在 Visual Basic 2005 中,默认值为 None

ClipControls

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

Container

Parent

CurrentX

CurrentY

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

DataChanged

DataField

DataFormat

DataMember

DataSource

新的实现。有关更多信息,请参见适用于 Visual Basic 6.0 用户的数据访问。

DragIcon

DragMode

新的实现。有关更多信息,请参见拖放(针对 Visual Basic 6.0 用户)。

DrawMode

DrawStyle

DrawWidth

FillColor

FillStyle

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

Font

FontBold

FontItalic

FontName

FontSize

FontStrikethrough

FontUnderline

Font

注意

字体在 Visual Basic 2005 中以不同方式处理。有关更多信息,请参见 Font 对象(针对 Visual Basic 6.0 用户)。

ForeColor

ForeColor

注意

颜色在 Visual Basic 2005 中以不同方式处理。有关更多信息,请参见颜色行为(针对 Visual Basic 6.0 用户)。

HasDC

HDC

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

Height

Height, Size

注意

坐标在 Visual Basic 2005 中以不同方式处理。有关更多信息,请参见坐标系统(针对 Visual Basic 6.0 用户)。

HelpContextID

新的实现。有关更多信息,请参见帮助支持(针对 Visual Basic 6.0 用户)。

HWnd

Handle

Image

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

注意

在 Visual Basic 2005 中,Image 属性不是图形属性。它是 Visual Basic 6.0 Picture 属性的等效项。

Index

新的实现。有关更多信息,请参见控件数组(针对 Visual Basic 6.0 用户)。

Left

Left

注意

坐标在 Visual Basic 2005 中以不同方式处理。有关更多信息,请参见坐标系统(针对 Visual Basic 6.0 用户)。

LinkItem

LinkMode

LinkTimeOut

LinkTopic

无等效项。有关更多信息,请参见动态数据交换(针对 Visual Basic 6.0 用户)。

MouseIcon

新的实现。有关更多信息,请参见无法设置自定义 MousePointer。

MousePointer

Cursor

有关常数的列表,请参见 MousePointer(针对 Visual Basic 6.0 用户)。

OLEDragMode

OLEDropMode

新的实现。有关更多信息,请参见拖放(针对 Visual Basic 6.0 用户)。

Parent

FindForm

Picture

Image

ScaleHeight

ScaleLeft

ScaleMode

ScaleTop

ScaleWidth

新的实现。有关更多信息,请参见坐标系统(针对 Visual Basic 6.0 用户)。

ToolTipText

ToolTip 组件

有关更多信息,请参见工具提示支持(针对 Visual Basic 6.0 用户)。

Top

Top

注意

坐标在 Visual Basic 2005 中以不同方式处理。有关更多信息,请参见坐标系统(针对 Visual Basic 6.0 用户)。

WhatsThisHelpID

新的实现。有关更多信息,请参见帮助支持(针对 Visual Basic 6.0 用户)。

Width

Width, Size

注意

坐标在 Visual Basic 2005 中以不同方式处理。有关更多信息,请参见坐标系统(针对 Visual Basic 6.0 用户)。

方法

Visual Basic 6.0 Visual Basic 2005 等效项

Circle

Cls

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

Drag

新的实现。有关更多信息,请参见拖放(针对 Visual Basic 6.0 用户)。

Line

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

LinkExecute

LinkPoke

LinkRequest

LinkSend

无等效项。有关更多信息,请参见动态数据交换(针对 Visual Basic 6.0 用户)。

Move

SetBounds

注意

坐标在 Visual Basic 2005 中以不同方式处理。有关更多信息,请参见坐标系统(针对 Visual Basic 6.0 用户)。

OLEDrag

新的实现。有关更多信息,请参见拖放(针对 Visual Basic 6.0 用户)。

PaintPicture

Point

Print

PSet

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

Scale

ScaleX

ScaleY

新的实现。有关更多信息,请参见坐标系统(针对 Visual Basic 6.0 用户)。

SetFocus

Focus

ShowWhatsThis

新的实现。有关更多信息,请参见帮助支持(针对 Visual Basic 6.0 用户)。

TextHeight

TextWidth

新的实现。有关更多信息,请参见图形(针对 Visual Basic 6.0 用户)。

ZOrder

BringToFrontSendToBack 方法

事件

Visual Basic 6.0 Visual Basic 2005 等效项

Change

新的实现。个别事件(BackgroundImageChangedSizeChanged 等)在某些属性更改时引发。

DblClick

DoubleClick

DragDrop

DragOver

新的实现。有关更多信息,请参见拖放(针对 Visual Basic 6.0 用户)。

GotFocus

Enter

KeyDown

KeyPress

KeyUp

新的实现。Visual Basic 2005PictureBox 控件不是容器控件,不接收击键。

LinkClose

LinkError

LinkNotify

LinkOpen

无等效项。有关更多信息,请参见动态数据交换(针对 Visual Basic 6.0 用户)。

LostFocus

Leave

OLECompleteDrag

OLEDragDrop

OLEDragOver

OLEGiveFeedback

OLESetData

OLEStartDrag

新的实现。有关更多信息,请参见拖放(针对 Visual Basic 6.0 用户)。

Validate

Validating

升级说明

在升级时,包含控件的 PictureBox 控件升级为 Panel 控件。对于升级到 Panel 控件的 Visual Basic 6.0 PictureBox 控件,分配给 Picture 属性的图像映射到 Panel 控件的 BackgroundPicture 属性。

请参见

参考

PictureBox 控件概述(Windows 窗体)