用VB代码实现ListView控件的行间隔颜色

发表于:2007-06-21来源:作者:点击数: 标签:
首先在窗口中添加一个ListView控件,方法:菜单-工程-部件-Microsoft Window Common Control 6.0 (后面为版本号)。再添加一个Picture控件,改名为picGreenbar。 实现的代码如下: Option Explicit Private Sub Form_Load() Dim i As Integer Dim iFontH

   

首先在窗口中添加一个ListView控件,方法:菜单->工程->部件->Microsoft Window Common Control 6.0 (后面为版本号)。再添加一个Picture控件,改名为picGreenbar。

实现的代码如下:

Option Explicit

Private Sub Form_Load()

Dim i As Integer

Dim iFontHeight As Long

Dim iBarHeight As Integer

Dim j As Integer

Dim itmX As ListItem

Dim ColHead As ColumnHeader

ListView1.ColumnHeaders.Add , , "This is Just a Simple Example"

ListView1.ColumnHeaders(1).Width = 3000

'添加一些实验数据

For j = 1 To 33

Set itmX = ListView1.ListItems.Add()

itmX.Text = "This is item number " & CStr(j)

Next j

Me.ScaleMode = vbTwips

picGreenbar.ScaleMode = vbTwips

picGreenbar.BorderStyle = vbBSNone

picGreenbar.AutoRedraw = True

picGreenbar.Visible = False

picGreenbar.Font = ListView1.Font

iFontHeight = picGreenbar.TextHeight("b") + Screen.TwipsPerPixelY

iBarHeight = (iFontHeight * 1)

picGreenbar.Width = ListView1.Width

'======

picGreenbar.Height = iBarHeight * 2

picGreenbar.ScaleMode = vbUser

picGreenbar.ScaleHeight = 2

picGreenbar.ScaleWidth = 1

'draw the actual bars

picGreenbar.Line (0, 0)-(1, 1), vbWhite, BF

picGreenbar.Line (0, 1)-(1, 2), RGB(227, 241, 226), BF

'======

ListView1.PictureAlignment = lvwTile

ListView1.Picture = picGreenbar.Image

End Sub

代码量不多,不过很实用。

原文转自:http://www.ltesting.net