如何排序???

yexiong 2003-03-19 06:51:24
如何使TLISTVIEW的视图的显示样式为Report时,点击各列的表头按钮可按其列值进行排序
...全文
36 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zcs_1 2003-04-09
  • 打赏
  • 举报
回复
var
ColumnToSort: Integer;
SortStyle: Boolean = true;

procedure TWorkFlowListView.ColumnClick(Sender: TObject; Column: TListColumn);
begin
ColumnToSort := Column.Index;
(Sender as TCustomListView).AlphaSort;
SortStyle := not SortStyle;
end;

procedure TWorkFlowListView.Compare(Sender: TObject; Item1,
Item2: TListItem; Data: Integer; var Compare: Integer);
var
ix: Integer;
begin
if ColumnToSort = 0 then
Compare := CompareText(Item1.Caption,Item2.Caption)
else begin
ix := ColumnToSort - 1;
Compare := CompareText(Item1.SubItems[ix],Item2.SubItems[ix]);
end;
if SortStyle then
Compare:=-Compare;
end;

先定义两个全局变量,事件OnClick和OnCompare的代码参照上面就可以了。
yexiong 2003-04-03
  • 打赏
  • 举报
回复
有没有理好的办法
dht2003 2003-04-01
  • 打赏
  • 举报
回复
将数据表排序,再把它装到ListView里去。不过这样会很费资源
dahuzizyd 2003-03-20
  • 打赏
  • 举报
回复
我觉得先对连接的表排序要方便点。
yexiong 2003-03-19
  • 打赏
  • 举报
回复
能详细点吗?
有这方面的例子吗?
snake_eye 2003-03-19
  • 打赏
  • 举报
回复
手工去写代码派好了,在搞进去!

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧