本文向大家展示了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 进入讨论组讨论。
|