CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

ShellListView如何排序,用ListView的方法不行啊?

楼主netying()2003-11-02 12:05:33 在 C++ Builder / 基础类 提问

void   __fastcall   TForm1::ShellListView1ColumnClick(TObject   *Sender,  
              TListColumn   *Column)  
  {  
   
  ShellListView1->CustomSort(CustomSortProc,   0));  
   
  }  
  //---------------------------------------------------------------------------  
  int   __stdcall   CustomSortProc(long   Item1,   long   Item2,   long   ParamSort)  
   
  {  
  return   -CompareText(((TListItem   *)Item1)->Caption,((TListItem   *)Item2)->Caption);  
  //return   -CompareText(((TListItem   *)Item1)->SubItems->Strings[0],((TListItem   *)Item2)->SubItems->Strings[0]);  
   
  }  
   
  上边的方法在ListView中是好用的,但是ShellListView中无效果,我看了ShellListView好象对CustomSort这个函数进行了重载,不知道做了什么改动。如何才能实现资源管理器的排序效果啊? 问题点数:0、回复次数:16Top

1 楼constantine(飘遥的安吉儿)回复于 2003-11-02 12:27:32 得分 0

你自己去看他自带的例子就可以了,里面有阿。Top

2 楼netying()回复于 2003-11-02 12:33:02 得分 0

例子我看了,但是那个只能是设置sorted属性,不能象资源管理器那样对文件大小,时间,文件类型等排序Top

3 楼netying()回复于 2003-11-02 16:36:19 得分 0

高手帮忙啊Top

4 楼netying()回复于 2003-11-03 18:06:42 得分 0

up.Top

5 楼pzoon(杀死日本人)回复于 2003-11-03 19:09:19 得分 0

我也帮你UPTop

6 楼netying()回复于 2003-11-03 21:38:58 得分 0

只能up..Top

7 楼netying()回复于 2003-11-04 12:42:09 得分 0

实在不行是不是要自己写算法了?Top

8 楼netying()回复于 2003-11-04 19:53:32 得分 0

在顶。Top

9 楼Friecin(雪客)回复于 2003-11-05 01:13:22 得分 0

int   __fastcall   MyCompare(TTreeNode   *Node1,TTreeNode   *Node2,   int   Reverse)  
  {  
      int   RET   =   Node1->ImageIndex   >   Node2->ImageIndex   ?   1:0;  
      if   (   Reverse   )  
          return   -RET;  
      return   RET;  
  }  
   
  试一试吧,下面是正反排序的代码:  
  TreeView1->CustomSort((CommCtrl::TTVCompare)MyCompare,   0);  
  TreeView1->CustomSort((CommCtrl::TTVCompare)MyCompare,   1);  
   
  看看对你有没有帮助!Top

10 楼netying()回复于 2003-11-05 08:23:11 得分 0

Friecin(雪客)   :这段代码我也看过,跟我写的那段是一个意思,这个是treeview的,  
  我在listview中都好用,可是shelllistview中就不好用了Top

11 楼netying()回复于 2003-11-06 12:15:00 得分 0

up.............Top

12 楼sfemil(心洋)回复于 2003-11-06 13:05:37 得分 0

给你一个Delphi的网站   有人问到这个问题。有解答。  
   
  http://www.aidelphi.com/ShowTopic.asp?TopicID=2841&PageIDX=1&SpaceID=18#CurrentTopicTop

13 楼penu(懒猫·子在川上之再上征程·杀人无心之寓怒于静)回复于 2003-11-06 13:30:38 得分 0

如果你是用的BCB自带的ShellList组件,那么你可以查看它的源代码并进行修改后重新安装。Top

14 楼netying()回复于 2003-11-08 11:07:27 得分 0

谢谢各位,看来真没有办法了,试着改这个控件Top

15 楼netying()回复于 2004-01-15 18:57:08 得分 0

这个现在有没有人做过呀,我可以再加分啊!Top

16 楼yxlab()回复于 2004-03-25 21:31:38 得分 0

可以用http://plasmatech.com/上介绍的VCL组件,功能强大。Top

相关问题

  • listview 排::::::::::::序
  • listview排序
  • ListView排序问题!
  • ListView的排序问题
  • listview 中如何排序?
  • 怎样给ListView排序?
  • ListView控件如何排序?
  • WinForms的ListView排序问题
  • listview记录排序问题?
  • listview如何实现排序

关键词

  • 排序
  • shelllistview
  • customsort
  • mycompare
  • tlistitem
  • listview
  • treeview
  • ret
  • node
  • item

得分解答快速导航

  • 帖主:netying

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo