Вниз
Скачать: CL | DM;

TListView & Columns   Найти похожие ветки 

 
Артем   (2003-12-05 14:14) [0]

Уважаемые Мастера!Подскажите, пожалуйста, как сделать, чтобы при нажатии на одну из колонок ListView производилась сортировка именно по этой колонке? Как определить по какой колонке был клик?
Заранее всем благодарен.


 
mRodion ©   (2003-12-05 14:20) [1]

Обрабытывай OnColumnClick.
Для сортировки придется поставить SortType = stData, и определить событие OnCompare, в котором ручками сравниваешь два итема из расчета того, по какому полю нужно сортировать


 
Семен Сорокин ©   (2003-12-05 14:44) [2]

2 обработчика:
procedure TfmFlights.lvColumnClick(Sender: TObject; Column: TListColumn);
begin
TListView(Sender).Tag := Column.Index;
TListView(Sender).AlphaSort
end;

procedure TfmFlights.lvCompare(Sender: TObject; Item1, Item2: TListItem;
Data: Integer; var Compare: Integer);
begin
with TListView(Sender) do
if Tag = 0 then
Compare := CompareText(Item1.Caption, Item2.Caption)
else
Compare := CompareText(Item1.SubItems[Tag-1], Item2.SubItems[Tag-1])
end;


 
Артем   (2003-12-05 17:01) [3]

Всем спасибо!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.015 c
7-62297
Delphi5.01
2003-10-12 22:14
2003.12.19
Проблема с ОЛЕ, Вордом


4-62315
Sulimxar
2003-10-25 19:11
2003.12.19
Програмная прокрутка TTreeView


1-62040
xprosium
2003-12-06 02:39
2003.12.19
Получение строки


14-62218
guest_Dmitry
2003-11-26 16:00
2003.12.19
Почему повисает switch?


1-62132
Mag
2003-12-07 22:19
2003.12.19
Отключения




   Наверх