社区
C++ Builder
帖子详情
谁能给个不错的LISTVIEW点击列头排序的源代码
zyandzf
2004-08-26 10:59:37
谁能给个不错的LISTVIEW点击列头排序的源代码
感激不尽
谢谢
zhouying1981@163.net
...全文
220
2
打赏
收藏
谁能给个不错的LISTVIEW点击列头排序的源代码
谁能给个不错的LISTVIEW点击列头排序的源代码 感激不尽 谢谢 zhouying1981@163.net
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
constantine
2004-08-26
打赏
举报
回复
---------------------------------------------------------------
你需要在class里设置2个变量,一个int变量表示当前排序的列号,一个bool
变量表示当前是升序还是降序排列。当用户点击的列号和保存的列号不同时,
为升序排列,同时保存排序的列号;当用户点击的列号和保存的列号相同时,
将bool变量取反,然后再排序。这儿我写个例子:
class TForm1 : public TForm
{
__published: // IDE-managed Components
TListView *ListView1;
void __fastcall ListView1ColumnClick(TObject *Sender,
TListColumn *Column);
void __fastcall ListView1Compare(TObject *Sender, TListItem *Item1,
TListItem *Item2, int Data, int &Compare);
private: // User declarations
int SortCol;
bool Ascend;
bool __fastcall CustomSort(PFNLVCOMPARE SortProc, int lParam);
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
//-------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
SortCol = -1; Ascend = true;
}
//-------------------------------------------------------------
void __fastcall TForm1::ListView1ColumnClick(TObject *Sender,
TListColumn *Column)
{
if (SortCol != Column->Index) {
SortCol = Column->Index;
Ascend = true;
}
else
Ascend = !Ascend;
ListView1->CustomSort(NULL, 0);
}
//-------------------------------------------------------------
void __fastcall TForm1::ListView1Compare(TObject *Sender,
TListItem *Item1, TListItem *Item2, int Data, int &Compare)
{
if (SortCol == -1)
Compare = 0; //不排序
else if(SortCol == 0)
Compare = CompareText(Item1->Caption,Item2->Caption);
else
Compare = CompareText(Item1->SubItems->Strings[SortCol
-1], Item2->SubItems->Strings[SortCol-1]);
if (!Ascend) Compare = -Compare; //降序排列
}
wu_07
2004-08-26
打赏
举报
回复
http://community.csdn.net/Expert/topic/3300/3300860.xml?temp=.9795496
C语言笔记01(7.15-7.18)
C语言基本知识点思维导图
【智能汽车竞赛】摄像头组-长春理工大学-天狼五号技术赛方案.docx
【智能汽车竞赛】摄像头组-长春理工大学-天狼五号技术赛方案.docx
MATLAB中计算可达矩阵的实现方法
资源下载链接为: https://pan.quark.cn/s/abbae039bf2a 请用MATLAB编程实现从邻接矩阵计算可达矩阵。
hadoop-mapreduce-client-jobclient-2.7.3.jar中文文档.zip
1、压缩文件中包含: 中文文档、jar包下载地址、Maven依赖、Gradle依赖、
源代码
下载地址。 2、使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 3、特殊说明: (1)本文档为人性化翻译,精心制作,请放心使用; (2)只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; (3)不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 4、温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件。 5、本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册。
jetty-server-9.4.44.v20210927.jar中文文档.zip
1、压缩文件中包含: 中文文档、jar包下载地址、Maven依赖、Gradle依赖、
源代码
下载地址。 2、使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 3、特殊说明: (1)本文档为人性化翻译,精心制作,请放心使用; (2)只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; (3)不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 4、温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件。 5、本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册。
C++ Builder
13,871
社区成员
102,694
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章