Listview控件上期说到,又爱又恨,本节内容将介绍一个有颜色的内容。
一个工作表,如果加上不同的图标来进行区分显示,那么就显得十分美观了。
给列表表头或内容用一个图片来显示效果,如下图样式:
下图为小图标显示样式
下图为列表显示样式
下图为大图标显示样式
通过给文字表格添加图标,是不是看上去好看了不少?
下面重点说一下,如何实现给Listview控件添加这些图标。
首先,我们用到了另一个控件ImageList,这是个图片列表对象,也就是说,把所有用到的图标首先要放置到这个对象里面,当Listview用到的时候在这里取。
这个对象没有实际形状,所以也不做外观编辑,只要将图片添加到ImageList对象里就可以。
添加方法可以进行面向对象方式进行,代码方式,本节不做介绍。
好,完成这一步是前提,然后在进行Listview属性设置,才能正确地从ImageLIst对象中提取出相应的图标。
设置方法:
.Icons = Me.ImageList1 '大图标
.SmallIcons = Me.ImageList1 '小图标
.ColumnHeaderIcons = Me.ImageList1 '列表图标
.View = lvwReport
分别有4个属性来进行:
- Icons 表示大图标
- SmallIcons 表示小图标
- ColumnHeaderIcons 表示表头图标
- View 表示是哪种方式来进行显示
View有4个可选项: lvwSmallIcon、lvwIcon、 lvwList、 lvwReport
通过以上设置,那就实现了给Listview控件添加图标建立联系,当然还不能看到图标,还有重要的一步,那就是添加图标。
添加图标是程序中进行的一个频繁运行环节,因为要给每条信息添加不同的图标。
添加方法:
Listview1.ColumnHeaders.Add , , "文字", 100, , 1
上述代码是添加标题图标的方法,其中1代表ImageList控件图标的索引号,也就是添加图片索引号为1的图标。
Listview1.ListItems.Add(,,"文字",1,1)
上述代码是添加数据图标的方法,其中1代表ImageList控件图标的索引号,也就是添加图片索引号为1的图标。
这里看到有2个1,第一个1表示大图标,第二个1表示小图标。
完整代码:
Private Sub UserForm_Initialize()
Dim xArr, xi As Integer
xArr = Array("打开", "设置", "编辑", "联系")
Dim li As Integer, ic As Single
ic = Me.ImageList1.ListImages.Count
With Me.ListView1
.Icons = Me.ImageList1 '大图标
.SmallIcons = Me.ImageList1 '小图标
.ColumnHeaderIcons = Me.ImageList1 '列表图标
.View = lvwReport
For li = 1 To ic '添加表头
.ColumnHeaders.Add , , xArr(li - 1), .Width \ ic, , li
Next li
For li = 1 To ic
With .ListItems.Add
.Icon = li
.SmallIcon = li
.Text = xArr(li - 1)
For xi = 1 To ic - 1
.SubItems(xi) = xi
Next xi
End With
Next li
End With
End Sub
按钮代码:
可以创建4个按钮,分别设置如下代码
Private Sub CommandButton1_Click()
Me.ListView1.View = lvwSmallIcon
End Sub
Private Sub CommandButton2_Click()
Me.ListView1.View = lvwIcon
End Sub
Private Sub CommandButton3_Click()
Me.ListView1.View = lvwList
End Sub
Private Sub CommandButton4_Click()
Me.ListView1.View = lvwReport
End Sub
通过样一个操作,就完成了给Listview列表添加图标的功能。
欢迎关注、收藏
---END---
,