Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];

Вниз

Сортировка 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 вся ветка

Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.014 c
7-43918
Den_lam
2003-12-11 12:06
2004.03.14
LPT


3-43271
Hollywood
2004-02-12 18:37
2004.03.14
сохранение ftFloat в поле Float MSSQL


8-43701
Hecz
2003-11-15 00:55
2004.03.14
canvas.pixels


3-43340
Yanker
2004-02-18 15:59
2004.03.14
Взлом пароля к БД *.db


3-43285
Andrew Frol
2004-02-12 15:29
2004.03.14
PageFooter в QuickReport e 3.0





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский