Delphi ListView排序
2012-01-06 23:12
537 查看
下面这种做法比较容易理解。可以参考一下,我一直是这样做的,效果很好
var m_bSort: boolean=false; //控制正反排序的变量
//ListView排序的回调函数,默认的是快速排序法,也可以自己在这里做算法
function CustomSortProc(Item1, Item2: TListItem; ParamSort: integer): integer; stdcall;
var txt1,txt2 : string;
begin
if ParamSort <> 0 then begin
try
txt1 := Item1.SubItems.Strings[ParamSort-1];
txt2 := Item2.SubItems.Strings[ParamSort-1];
if m_bSort then begin
Result := CompareText(txt1,txt2);
end else begin
Result := -CompareText(txt1,txt2);
end;
except
end;
end else begin
if m_bSort then begin
Result := CompareText(Item1.Caption,Item2.Caption);
end else begin
Result := -CompareText(Item1.Caption,Item2.Caption);
end;
end;
end;
//注意,请在属性窗口中进行设置先找到Columns属性进行增加列头名称,再在事件窗口中找到onColumnClick增加
//.ListView1ColumnClick事件
procedure TForm1.ListView1ColumnClick(Sender: TObject;
Column: TListColumn);
begin
ListView1.CustomSort(@CustomSortProc, Column.Index);
m_bSort := not m_bSort;
end;
相关文章推荐
- Delphi listview 点击列头排序
- Delphi的ListView自动排序
- Delphi ListView排序
- Delphi的ListView自动排序
- Delphi ListView排序
- Delphi ListView排序
- Delphi中使用ListView和TreeView的Item中的Data可能被忽略的内存泄漏
- wpf中listview添加排序
- Android自定义A_Z字母排序ListView,悬停Listview
- Delphi中实现ListView滚动条的换肤方案
- Delphi ListView快速操作通用实现
- Android中Listview(七)--排序ListView
- 开源drag-sort-listview实现左右滑动删除和排序
- Android 实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- DELPHI VCL组件 TTreeList, Listview和Treeview相结合的多列树控件
- listview用法及其排序
- Android实现ListView的A-Z字母排序和过滤搜索功能,实现汉字转成拼音
- 自己动手(一)──可拖动排序的 ListView(3)
- 快速集成android实现listview的字母A-Z排序,界面侧边字母索引
- c# 中ListView点击排序的代码,含排序箭头哦!~...