我在TListView中有好多个Item, 我用Listview.Selected.delete方法删除一个后,想重新让它排列整齐。该怎样做,有什么简便的方法吗?

解决方案 »

  1.   

    好像都是先clear然后再重新add
      

  2.   

    你原来是怎么产生ListView内容的,先clear后再重新建立Listview内容就行了
      

  3.   

    我知道先clear再保存就可以啦,可是我不想在重新查询和建立一遍啊,就想一个盘符下的刷新功能,总该有吧
      

  4.   

    你的问题事先没有说清楚,你的ListView.ViewStyle是如何设置的?在修改数据之前,先用ListView1.Items.BeginUpdate;修改数据结束时用ListView1.Items.EndUpdate;另外还可以调用Listview1.Refresh;ListView1.Update;
      

  5.   

    这些我都试过,不管用,viewstyle设置为 vsIcon。救命啊
      

  6.   

    盘符下的刷新功能也是重新读取,只不过使用的API更底层的操作,速度很快.
      

  7.   

    还有就是用三方控件,TcxTreeList有个自动排序的功能
      

  8.   

    说错了,这控件不支持icon的显示方式
      

  9.   

      ListView1.Selected.Delete;
      ListView1.SortType := stText;
      ListView1.SortType := stNone;
      

  10.   

    看了下源代码,这样就行了
      ListView1.Selected.Delete;
      ListView1.AlphaSort;
      

  11.   

    "我用Listview.Selected.delete方法删除一个后,想重新让它排列整齐"
    我没明白,你想如何排列整齐,正常Listview.Selected.delete,在listView上已经没有了呀
      

  12.   


    这里的它是指 listview ,不是指 selected,,别人都明白,就你不明白。
      

  13.   

    楼上理解能力强.
    但我不理解:对listview进行排序和ListView1.Selected.Delete有什么关系.
    真接ListView1.AlphaSort就可以了(这个也不过只是对caption进行排序).