社区
C++ Builder
帖子详情
谁能给个不错的LISTVIEW点击列头排序的源代码
zyandzf
2004-08-26 10:59:37
谁能给个不错的LISTVIEW点击列头排序的源代码
感激不尽
谢谢
zhouying1981@163.net
...全文
242
2
打赏
收藏
谁能给个不错的LISTVIEW点击列头排序的源代码
谁能给个不错的LISTVIEW点击列头排序的源代码 感激不尽 谢谢 zhouying1981@163.net
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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
精彩编程与编程技巧-对
ListView
中的列
排序
...
精彩编程与编程技巧-对
ListView
中的列
排序
...
WPF
ListView
控件添加
排序
功能
WPF
ListView
控件添加
排序
功能,即使绑定数据库主键,
排序
后,
Listview
r控件正常识别
WPF
ListView
排序
功能
WPF 使用
ListView
排序
的程序例子
Listview
实例
排序
Listview
实例
排序
当
点击
ListView
的
列头
时,对
ListView
排序
wpf列表
listview
自动
排序
排列
wpf列表
listview
自动
排序
排列,初学专用
C++ Builder
13,874
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章