Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.28;
Скачать: CL | DM;

Вниз

Сортировка ListView   Найти похожие ветки 

 
.ruslan ©   (2006-04-20 13:45) [0]

Как отсортировать по второй колонне (в которой дата) список в TListView


 
MBo ©   (2006-04-20 13:51) [1]

CustomSort используй


 
.ruslan ©   (2006-04-20 14:11) [2]

А можно пример кода?


 
MBo ©   (2006-04-20 14:18) [3]

Да, можно. В справке есть.


 
.ruslan ©   (2006-04-20 14:26) [4]

Не получается, мне нужно по дате


 
Alarm ©   (2006-04-20 14:29) [5]

function CustomDateSortProc(Item1, Item2: TListItem; ParamSort: integer): integer; stdcall;
begin
result:=0;
if strtodatetime(item1.SubItems[colN]){>}< strtodatetime(item2.SubItems[colN]) then
  Result :=1
else
  if strtodatetime(item1.SubItems[colN]){<}> strtodatetime(item2.SubItems[colN]) then
    Result :=-1;
end;

procedure TForm1.ListView1ColumnClick(Sender: TObject;  Column: TListColumn);
begin
if column =ListView1.columns[3] then
  ListView1.CustomSort(@CustomDateSortProc, 0);


 
.ruslan ©   (2006-04-20 14:47) [6]


> Alarm

EStreengListError


 
Alarm ©   (2006-04-20 14:52) [7]

В каком месте (уточни)?
У меня вроде и очень давно работает


 
Alarm ©   (2006-04-20 14:55) [8]

Где ты смог найти EStreengListError

Скорее EStringListError

Description
EStringListError is raised when an application attempts to access a list box (for example, to add an item) using an invalid index
.

Хотя не очень понятно как ты туда попал?


 
.ruslan ©   (2006-04-20 14:55) [9]

мне не нужно нахимать на колону, а сделал действие на кнопку ListView1.CustomSort(@CustomDateSortProc, 0);

а в функции указал номер столбца:

function CustomDateSortProc(Item1, Item2: TListItem; ParamSort: integer): integer; stdcall;
begin
result:=0;
if strtodatetime(item1.SubItems[2]){>}< strtodatetime(item2.SubItems[2]) then
 Result :=1
else
 if strtodatetime(item1.SubItems[2]){<}> strtodatetime(item2.SubItems[2]) then
   Result :=-1;
end;


 
.ruslan ©   (2006-04-20 15:02) [10]


> Скорее EStringListError

Project ... exception class EStringListError with message "List index out of bounds (2)"


 
kilkennyCat ©   (2006-04-20 15:03) [11]

столбцы начинаются с нуля


 
MBo ©   (2006-04-20 15:04) [12]

На всякий случай - item1.SubItems[2] - это четвертая колонка. Она у тебя есть?


 
.ruslan ©   (2006-04-20 15:12) [13]


> На всякий случай - item1.SubItems[2] - это четвертая колонка.
>  Она у тебя есть?

нужно сортировать по 3ей


 
.ruslan ©   (2006-04-20 15:12) [14]

ВСЁ РАБОТЕТ, ВСЕМ СПАСИБО!


 
.ruslan ©   (2006-04-20 15:21) [15]

И ещё такой вопрос: у меня декствие стоит на ListView1Change но как сделать чтобы действие выполнялось только при смене Checked?


 
.ruslan ©   (2006-04-20 15:51) [16]

Какое действие происходит при смене Cheked ?



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

Текущий архив: 2006.05.28;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.05 c
4-1141714583
Новичоккк
2006-03-07 09:56
2006.05.28
Перехватить вызов функции из DLL


1-1145362116
Дмитрий_177
2006-04-18 16:08
2006.05.28
Цветная панель


2-1147101450
Ezorcist
2006-05-08 19:17
2006.05.28
Обращение к сайту


2-1147549788
jenya_rus
2006-05-13 23:49
2006.05.28
Цикл. В чем разница?


10-1108066589
Pine
2005-02-10 23:16
2006.05.28
Задание формата ячеек типа "текст" в экселе созданного через OLE