这是一个在listview中添加背景的程序 希望能够对你有帮助 Public Sub SetColorBar(cListView As ListView, cColorBar As PictureBox, Optional lColor1 As Long = &HE2F1E3, Optional lColor2 As Long = vbWhite) Dim iLineHeight As Long Dim iBarHeight As Long Dim lBarWidth As Long 'On Error GoTo SetColorBarError If cListView.View = lvwReport Then cColorBar.AutoRedraw = True cColorBar.BorderStyle = vbBSNone cColorBar.ScaleMode = vbTwips cColorBar.Visible = False cColorBar.Font = cListView.Font iLineHeight = cColorBar.TextHeight("|") + Screen.TwipsPerPixelY iBarHeight = iLineHeight * 3 lBarWidth = cListView.Width cColorBar.Height = iBarHeight * 2 cColorBar.Width = lBarWidth cColorBar.Line (0, 0)-(lBarWidth, iBarHeight), lColor1, BF cColorBar.Line (0, iBarHeight)-(lBarWidth, iBarHeight * 2), lColor2, BF End If cListView.PictureAlignment = lvwTile cListView.Picture = cColorBar.Image End SubPrivate Sub Form_Load() ListView1.Picture = Picture1.Image End Sub
SSTab的BackColor属性只能改变标题背景色,我现在要改变的是其每一页的容器背景色。请问哪位有类似的容器控件,我急着用,多谢。
希望能够对你有帮助
Public Sub SetColorBar(cListView As ListView, cColorBar As PictureBox, Optional lColor1 As Long = &HE2F1E3, Optional lColor2 As Long = vbWhite)
Dim iLineHeight As Long
Dim iBarHeight As Long
Dim lBarWidth As Long
'On Error GoTo SetColorBarError
If cListView.View = lvwReport Then
cColorBar.AutoRedraw = True
cColorBar.BorderStyle = vbBSNone
cColorBar.ScaleMode = vbTwips
cColorBar.Visible = False
cColorBar.Font = cListView.Font
iLineHeight = cColorBar.TextHeight("|") + Screen.TwipsPerPixelY
iBarHeight = iLineHeight * 3
lBarWidth = cListView.Width
cColorBar.Height = iBarHeight * 2
cColorBar.Width = lBarWidth
cColorBar.Line (0, 0)-(lBarWidth, iBarHeight), lColor1, BF
cColorBar.Line (0, iBarHeight)-(lBarWidth, iBarHeight * 2), lColor2, BF
End If
cListView.PictureAlignment = lvwTile
cListView.Picture = cColorBar.Image
End SubPrivate Sub Form_Load()
ListView1.Picture = Picture1.Image
End Sub