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

首先在窗口中添加一个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

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

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z