listview 中如何排序?

seraph1213 2002-09-14 01:15:34
在listview中点击列标如何进行排序,请各位高手赐教?谢谢!
...全文
44 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuhongwei 2002-09-16
  • 打赏
  • 举报
回复
listview2属性里面有一个
seraph1213 2002-09-14
  • 打赏
  • 举报
回复
aft_st_sd(浪子) 能回答一下吗?我现在非常需要答案!!谢谢!

各位高手帮帮我了!
seraph1213 2002-09-14
  • 打赏
  • 举报
回复
现在又有些新的问题,就是在listview1 到listview2 中的拖拽,我在listview2中写的OndragDrop,目的是要把listview1中的文件拖拽过来时响应,可是我在listview2中往listview2自己拖拽一下也响应这一事件,我应该如何克服?还有一个就是在从listview1 到listview2 中的拖拽时如何获得拖拽到listview2中那个焦点的文件名?
aft_st_sd 2002-09-14
  • 打赏
  • 举报
回复
var ColumnToSort: Integer;

The OnColumnClick event handler sets the global variable to indicate the column to sort and calls AlphaSort:

procedure TForm1.ListView1ColumnClick(Sender: TObject; Column: TListColumn);

begin
ColumnToSort := Column.Index;
(Sender as TCustomListView).AlphaSort;
end;


The OnCompare event handler causes the list view to sort on the selected column:

procedure TForm1.ListView1Compare(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;

end;
seraph1213 2002-09-14
  • 打赏
  • 举报
回复
procedure TForm1.ListView1ColumnClick(Sender: TObject;
Column: TListColumn);
if Column=lvcurrent.Columns[0] then
lvcurrent.AlphaSort;


这是按照字母顺序排列,可是如何根据字母的长短或者其他的来排列呢?
ssl2000 2002-09-14
  • 打赏
  • 举报
回复
procedure TForm1.ListView1ColumnClick(Sender: TObject;
Column: TListColumn);
begin
listview1.SortType:=stText;
end;
seraph1213 2002-09-14
  • 打赏
  • 举报
回复
那是否要建立一个临时表呢?
wangge 2002-09-14
  • 打赏
  • 举报
回复
LISTVIEW好像有一个SORT什么的属性分类,
还有一个点击标题的事件

直接分类,一个梦

5,387

社区成员

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

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