本文向大家展示了listview控件在report视图下任何列头的双向排序技巧,源代码如下
Option Explicit
Private Sub Form_Load()
Dim i As Integer
Dim itemx As ListItem
ListView1.View = lvwReport
With ListView1.ColumnHeaders
.Add , , "编号", 600, lvwColumnLeft
For i = 1 To 2
.Add , , "内容项" & i, 1000, lvwColumnRight
Next
End With
With ListView1.ListItems
For i = 1 To 10
Set itemx = .Add
itemx.SubItems(1) = i
itemx.SubItems(2) = Chr(64 i)
itemx.SubItems(3) = Format(DateAdd("m", i, Date), "yyyy-mm-dd")
Next
End With
End Sub
Private Sub ListView1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
With ListView1
If (ColumnHeader.Index - 1) = .SortKey Then
.SortOrder = (.SortOrder 1) Mod 2
Else
.Sorted = False
.SortOrder = 0
.SortKey = ColumnHeader.Index - 1
.Sorted = True
End If
End With
End Sub
字串9
Option Explicit
Private Sub Form_Load()
Dim i As Integer
Dim itemx As ListItem
ListView1.View = lvwReport
With ListView1.ColumnHeaders
.Add , , "编号", 600, lvwColumnLeft
For i = 1 To 2
.Add , , "内容项" & i, 1000, lvwColumnRight
字串9
Next
End With
With ListView1.ListItems
For i = 1 To 10
Set itemx = .Add
itemx.SubItems(1) = i
itemx.SubItems(2) = Chr(64 i)
itemx.SubItems(3) = Format(DateAdd("m", i, Date), "yyyy-mm-dd")
Next
End With
End Sub
Private Sub ListView1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
With ListView1
If (ColumnHeader.Index - 1) = .SortKey Then
.SortOrder = (.SortOrder 1) Mod 2
Else
.Sorted = False
.SortOrder = 0
.SortKey = ColumnHeader.Index - 1
.Sorted = True
End If
End With
End Sub
本文介绍了一个使用ListView控件在Report视图下实现列头双向排序的方法,并提供了完整的VBScript示例代码。通过设置SortOrder属性,可以轻松实现升序或降序排列。
1万+

被折叠的 条评论
为什么被折叠?



