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

Сортировка ListView в режиме vsReport при нажатии на заголовок   Найти похожие ветки 

← →
CRACKISH ©   (2004-03-02 10:51) [0]

Люди вот нашел такой прикол (Спасибо MBo), но у меня delphi выдает в этой функции:
/function CustomNameSortProc(Item1, Item2: TListItem; ParamSort: integer): integer
item.Caption := sr.name;
Item.SubItems.Add(datetimetostr(filedatetodatetime(sr.time)));
end;
until FindNext(sr) < > 0;
FindClose(sr);
end;

такие ошибки:

[Error] Rey.pas(236): Unknown directive: "item"
[Error] Rey.pas(239): Declaration expected but "UNTIL" found
[Error] Rey.pas(241): "." expected but ";" found


Помогите пожалуйста решить проблему! Зарание благодарен!


← →
Тимохов ©   (2004-03-02 10:55) [1]

код приведите корректный (где begin)


← →
CRACKISH ©   (2004-03-02 10:58) [2]

Вот весь код:
function CustomDateSortProc(Item1, Item2: TListItem; ParamSort: integer):
integer; stdcall;
begin
result := 0;
if strtodatetime(item1.SubItems[0]) > strtodatetime(item2.SubItems[0]) then
Result := 1
else if strtodatetime(item1.SubItems[0]) < strtodatetime(item2.SubItems[0])
then
Result := -1;
end;

function CustomNameSortProc(Item1, Item2: TListItem; ParamSort: integer): integer
item.Caption := sr.name;
Item.SubItems.Add(datetimetostr(filedatetodatetime(sr.time)));
end;
until FindNext(sr) < > 0;
FindClose(sr);
end;

procedure TForm1.lv1ColumnClick(Sender: TObject; Column: TListColumn);
begin
if column = lv1.columns[0] then
LV1.CustomSort(@CustomNameSortProc, 0)
else
LV1.CustomSort(@CustomDateSortProc, 0)
end;


А вот где я ее нашел: http://delphiworld.by.ru/base/listview_sort.html


← →
Тимохов ©   (2004-03-02 11:04) [3]

это лажа какая-то

> function CustomNameSortProc(Item1, Item2: TListItem; ParamSort:
> integer): integer
> item.Caption := sr.name;
> Item.SubItems.Add(datetimetostr(filedatetodatetime(sr.time)));

Это что? Где здесь begin. Вы что-то неверно скопировали.


← →
Тимохов ©   (2004-03-02 11:05) [4]

Посмотрел по ссылке - там тоже лажа.
Кусок пропал куда-то.
Допишите сами.
В CustomNameSortProc надо сделать сравнение имен.
Очевидно, что там есть "левый" кусок от заполнения таблицы.


← →
NAlexey ©   (2004-03-02 11:05) [5]

>А вот где я ее нашел:
БА! Неужели действительно там такое есть?


← →
Тимохов ©   (2004-03-02 11:06) [6]

Думаю, что уважаемый MBo просто ошибся при копировании текста.


← →
CRACKISH ©   (2004-03-02 11:07) [7]

Да я код скопировал ссайта! Написал автору, но он молчит!!! Может люди этого форума помогут мне????


← →
Тимохов ©   (2004-03-02 11:11) [8]

Помогаю.
Напишите тело CustomNameSortProc по аналогии.
типа того

function CustomNameSortProc (....)...
begin
Result := -CompareText(Item1.Caption,Item2.Caption);
end;


← →
CRACKISH ©   (2004-03-02 11:15) [9]

А может кто-то предложит альтернативный вариант Сортировки ListView в режиме vsReport при нажатии на заголовок????


← →
Тимохов ©   (2004-03-02 11:17) [10]

Событие OnCompare и метод AlphaSort


← →
Тимохов ©   (2004-03-02 11:18) [11]

Чем вам 8 не подошло - кусок же из штатного хелпа взят, т.е. работает.


← →
ssk   (2004-03-02 11:22) [12]

компонент, в котором реализовано то, о чем говорил Тимохов © (02.03.04 11:11) [8]

http://www.ucad.pisem.net/dmlistview.zip


← →
MBo ©   (2004-03-02 12:45) [13]

правильный цитатник здесь ;))

http://www.lmc-mediaagentur.de/dpool/tips/1159.htm



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

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



Память: 0.48 MB
Время: 0.025 c
14-43857
NoOne
2004-02-21 18:59
2004.03.14
ЕкоСофт


3-43306
jen_bond
2004-02-10 19:29
2004.03.14
Проблемма с выполнением запроса.


1-43652
Kair
2004-03-02 07:35
2004.03.14
Класс и объект


1-43598
sniper
2004-01-23 13:27
2004.03.14
Срочно! Как из Delphi6 запустить приложение


3-43316
Ramdom
2004-02-17 13:55
2004.03.14
Не отображаются jpeg картинки в DBImage?




   Наверх