单击ListView 列表头实现排序

 
单击ListView 列表头实现排序

 
ListView 控件有排序的功能!是一段代码实现排序的功能。并在列表头加上了排序的符号
代码如下:
   Dim Li_i As Integer
   Dim Li_Count As Integer
   Dim li_len As Integer
   Dim ls_num As String '总数量
   Dim ls_amount As String '总金额
   Dim ls_return As String '毛利
  
   If lstmx.ListItems.Count = 0 Then Exit Sub ‘没有数据退出
  
'将合计列中的数据取出来
   ls_num = lstmx.ListItems.Item(lstmx.ListItems.Count).SubItems(8)
   ls_amount = lstmx.ListItems.Item(lstmx.ListItems.Count).SubItems(10)
   ls_return = lstmx.ListItems.Item(lstmx.ListItems.Count).SubItems(11)
  
   lstmx.ListItems.Remove lstmx.ListItems.Count '移出合计列。使合计列不参加排序
 
   lstmx.Sorted = gs_bl_True'排序设为真
 
   Li_Count = lstmx.ColumnHeaders.Count
   For Li_i = 1 To Li_Count
        li_len = InStr(Trim(lstmx.ColumnHeaders.Item(Li_i).Text), "△")
        If li_len > 0 Then _
         lstmx.ColumnHeaders.Item(Li_i).Text = _
            Left(lstmx.ColumnHeaders.Item(Li_i).Text, li_len - 1)
           
        li_len = InStr(Trim(lstmx.ColumnHeaders.Item(Li_i).Text), "▽")
        If li_len > 0 Then _
         lstmx.ColumnHeaders.Item(Li_i).Text = _
            Left(lstmx.ColumnHeaders.Item(Li_i).Text, li_len - 1)
           
       li_len = 0
   Next
  
   lstmx.SortKey = ColumnHeader.Index - 1
   lstmx.SortOrder = Abs(Not lstmx.SortOrder = 1)
  
   If lstmx.SortOrder = 0 Then '升序设为假
     ColumnHeader.Text = ColumnHeader.Text & "△"
   Else '降序
     ColumnHeader.Text = ColumnHeader.Text & "▽"
   End If
  
   lstmx.Sorted = gs_bl_False '排序为假
Li_Count = lstmx.ListItems.Count
   lstmx.ListItems.Add , , "合计:"  '添加合计列
lstmx.ListItems.Item(Li_Count + 1).Bold = gs_bl_True
   lstmx.ListItems.Item(Li_Count + 1).ForeColor = vbRed
   lstmx.ListItems.Item(Li_Count + 1).SubItems(8) = ls_num
   lstmx.ListItems.Item(Li_Count + 1).SubItems(10) = ls_amount
   lstmx.ListItems.Item(Li_Count + 1).SubItems(11) = ls_return

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值