社区
C++ Builder
帖子详情
谁能给个不错的LISTVIEW点击列头排序的源代码
zyandzf
2004-08-26 10:59:37
谁能给个不错的LISTVIEW点击列头排序的源代码
感激不尽
谢谢
zhouying1981@163.net
...全文
218
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
IOS-粉色系PPT模版.ppt
IOS-粉色系PPT模版.ppt
基于python实现的煤矿井下安全生产检测系统+源码+pyQt界面+项目文档(毕业设计&课程设计&项目开发)
基于python实现的煤矿井下安全生产检测系统+源码+pyQt界面+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 煤矿井下生产环境恶劣,为保障井下人员的安全,需要实时对井下各种环境因素进行监控,监控数据主要分为两大类,第一类为模拟量:如甲烷,瓦斯,氧气,一氧化碳、二氧化碳、温度等(结果以数值表示),第二类为开关量:例如通风风机、设备运行状态、馈电传感器等(结果以0\1 表示,代表两个状态,0代表断开状态,1代表接通状态)。 系统分为上位机(计算机)和下位机(嵌入式系统),通过网络通信。下位机连接各种传感器,并设置多个继电器(进出端口,可实现对传感器的通断电),并将传感器数据定时上传到上位机(每5秒上传一次;如果传感器数值发生变化,则立即上传)。上位机收到下位机数据后,要显示收到的各个传感器的数值或者状态,并且根据控制规则向下位机传输控制数据,从而对各个传感器进行控制
前端分析-202307110078988
前端分析-202307110078988
QT6 模型视图架构里的列表视图 Q
ListView
的
源代码
带注释
QT6 模型视图架构里的列表视图 Q
ListView
的
源代码
带注释。
欧洲互联网金融发展对我国商业银行的启示.docx
欧洲互联网金融发展对我国商业银行的启示.docx
C++ Builder
13,870
社区成员
102,693
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章