vb.net入门——ImageList 组件的使用


vb.net中用作处理图形图像的控件有两个:PictureBox和ImageList。PictureBox(图片箱)控件被用来显示图形或者图像,ImageList 组件用于存储图形或图像。

上一篇我们看了vb.net入门——PictureBox控件的使用,这里我们来了解ImageList组件的基本使用。

ImageList 组件又称图像列表,主要用于存储图像。这里说的存储图像是指把图像存储在ImageList 组件内,在需要显示的时候即可很方便地按图像的索引调用它,主要就是为了给其他控件提供位图的支持,它仅仅是个图标的承载工具,本身并不参与界面的设计。该组件在vb.net工具箱中的如图所示:

它是无界面组件,所以拖放到窗体中后,它不显示在窗体上,而是现实在窗体下方的组件栏中。

我们可以将ImageList 组件与具有ImageList 属性的控件进行关联,这样的控件包括:ListView、TreeView、ToolBar、TabControl、Button、CheckBox、RadioButton和Label控件。而且可以使用同一个ImageList 组件与多个有ImageList 属性的控件相关联,只需把多个控件的ImageList 属性都设置为ImageList 组件的名称。当更改图像列表中某个索引号的图标时,新的图标也会同时在所有与该ImageList组件关联的控件中更新。

一、ImageList 组件的常用属性

1、Name 属性:在代码中标识该组件的名称

2、ColorDepth 属性:获取图像列表的颜色深度。在 .NET Framework 1.0 版本中,默认值为 Depth4Bit。在 .NET Framework 1.1 版本中,默认值为 Depth8Bit。

3、TransparentColor 属性:获取或设置被视为透明的颜色,默认值为 Transparent。

4、ImageSize 属性:定义列表中的图像高度和宽度的 Size。默认高度和宽度是 16 × 16,最大值为 256 × 256。

5、Images 属性:ImageList 组件的图像集合。该属性是ImageList 组件最重要的属性,下面我们以实例来演示怎么应用它。

二、为ImageList 控件添加和移除图像

1、在设计器中添加或移除图像:

1)、选择 ImageList 组件或向窗体添加一个 ImageList 组件。

2)、在“属性”窗口中,单击 Images 属性旁的省略号按钮 (),弹出“Image 集合编辑器”,如下图所示:

3)、使用“添加”,弹出“打开”对话框,选择需要添加的图像文件即可向列表添加图像;使用“移除”按钮从列表中移除选中的图像。

2、以编程方式添加图像

可以使用图像列表 Images 属性的 Add 方法来实现运行时以编程方式添加图像到图像列表中。如下代码,向 ImageList 组件添加一个位于My Documents 文件夹下的图像文件。

Public Sub LoadImage()

'实例化一个Image 对象

Dim myImage As System.Drawing.Image = Image.FromFile(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) & "\myImage.jpg")

ImageList1.Images.Add(myImage)

End Sub

3、以编程方式移除图像

1)、移除单个图像,可以使用 Remove 方法,如下所示:

ImageList1.Images.Remove(myImage)

2)、还可以使用 RemoveAt 方法移除指定索引的图像,如下所示代码移除索引为0的图像:

ImageList1.Images.RemoveAt(0)

3)、或使用 Clear 方法清除图像列表中的所有图像。

ImageList1.Images.Clear()

三、让相关控件显示Image对象

对于所有有ImageList 属性的控件,都可以与ImageList 组件相关联,并通过 ImageIndex 属性来指定显示图像列表中的图像。下面我们以在一个Button控件中显示图像为例来说明。

1、在设计器中关联控件的图像显示:

1)、首先为窗体添加一个Button控件,一个ImageList 组件,按上面的方法为ImageList 组件添加图像列表。

2)、选中Button控件,在它的“属性”窗口中选择ImageList 属性,单击后面的下拉列表,选择ImageList1,这时就为Button1控件指定了图像列表,如下图三所示:

3)、然后使用“属性”窗口中的ImageIndex 属性的下拉列表指定关联的图像,如图四所示:

现在图像就会在Button控件上显示出来,如下图五所示:

4)、我们可以通过调整Button控件的TextAlign和ImageAlign属性来控制Button控件中图像和文字的位置。

5)、删除Button控件显示的图像,我们可以通过设置ImageIndex或者ImageList属性为None来删除显示的图片;也可以选择Image 属性,单击鼠标右键弹出右键菜单来重置,如下图六所示:

2、编程时为控件显示图像

如下代码,可以为Button控件显示ImageList1 组件中的索引为1的图像

Button1.ImageList = ImageList1

Button1.ImageIndex = 1

要删除Button控件的图像显示,可以使用如下代码:

Button1.ImageList = Nothing

或者把ImageIndex 属性赋值为-1

Button1.ImageIndex = -1

 

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3