我用listview来显示数据,已审核记录需要用其它的背景色显示,
请问该怎么做?万分感谢!

解决方案 »

  1.   

    因SubItem只有ForeColor屬性,若想使用不的BackColor,需要通過攔截WM_NOTIFY消息來改變它的顏色.
      

  2.   

    用Spread可以实现你的要求。只要你写俩句代吗。
      

  3.   

    James_ht(顺风飞扬) ( ) 信誉:100  2004-09-18 15:22:00  得分: 0  
       用Spread可以实现你的要求。只要你写俩句代吗。
    -----------------------------------------------------------  
     Spread是啥呀?我也想知道
      

  4.   

    VB6的ListView控件的ListItem对象都有ForeColor属性可以设置前景色,都有Bold属性可以将文字加粗,但是没有设置每个ListItem背景色的属性。 
      

  5.   

    ListView1每行ListItem没有背景色的属性,有些时候使用一个动态变化的Picture作为ListView的北京图片来模拟实现,这种极力不推荐!可以考虑第三方的Grid控件,例如www.grid2000.com的FlexCell(需要部分Money)
      

  6.   

    ListView1每行ListItem没有背景色的属性,有些时候使用一个动态变化的Picture作为ListView的背景图片来模拟实现,这种极力不推荐!:$
      

  7.   

    http://blog.joycode.com/shannon/archive/2003/11/24/7381.aspx
      

  8.   

    http://community.csdn.net/Expert/topic/3295/3295916.xml?temp=.3629267
      

  9.   

    Private Sub SetListItemColor(lv As ListView, picBg As PictureBox)   Dim i As Integer   Dim mItem As ListItem   picBg.BackColor = lv.BackColor   lv.Parent.ScaleMode = vbTwips    picBg.ScaleMode = vbTwips    picBg.BorderStyle = vbBSNone    picBg.AutoRedraw = True    picBg.Visible = False        picBg.Width = lv.Width    picBg.Height = lv.ListItems(1).Height * (lv.ListItems.Count)    picBg.ScaleHeight = lv.ListItems.Count    picBg.ScaleWidth = 1    picBg.DrawWidth = 1    '-----------------------------    'custom.such as    '------------------------------    For i = 1 To 33        Set mItem = lv.ListItems        If mItem.Checked = False Then            If i Mod 2 = 0 Then                picBg.Line (0, i - 1)-(1, i), RGB(254, 209, 199), BF            Else               picBg.Line (0, i - 1)-(1, i), RGB(20, 54, 199), BF            End If        Else             picBg.Line (0, i - 1)-(1, i), RGB(254, 200, 100), BF        End If    Next
     
        lv.Picture = picBg.ImageEnd Sub