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

Вниз

Как можно получить Item.Data в TListView.OnData?   Найти похожие ветки 

 
Igor-NN   (2002-02-07 19:14) [0]

В событие TListView.OnData передаются параметры Sender и Item. Я пытаюсь внутри процедуры события получить Item.Data, но всё время приходит nil, хотя я установил этот параметр, когда добавлял запись в ListView через AddItem. В исходниках VCL стоИт
FTempItem.FData := Pointer(lParam) перед вызовом OwnerDataFetch(FTempItem, Request) т.е. параметр Data по идее должен был бы передаваться. В чём грабли?


 
DMN   (2002-02-07 20:31) [1]

Так OnData - оно для виртуальных списков. И заполняется элемент по запросу в этом самом OnData. А сам ListView не фига не хранит - ни data, ни caption, ни subitems... Только Item.Index вполне адекватен - по нему и надо ориентироваться.


 
Igor-NN   (2002-02-08 10:48) [2]

>...а сам ListView не фига не хранит
Пробовал: если я присвою ListView.Items[...].Data, я могу его потом считать.

>Только Item.Index вполне адекватен - по нему и надо
>ориентироваться.
Нда... только вызов ListView.Items[Item.Index].Data приводит в OnData к переполнению стека. Это хорошо, когда данные хранятся во внешней коллекции, но это неудобно, т.к. например, при перестановке элементов списка приходится переставлять и элементы этой коллекции. Можно ли хранить всё это дело в самом списке, или я много захотел? :)


 
Юрий Федоров   (2002-02-08 11:04) [3]

Все должно работать. Посмотри повнимательней, где ты сам грохнул
эту data


 
Igor-NN   (2002-02-08 12:24) [4]

Не... не грохал :) Оказывается, я ошибся, всё как раз наоборот: если я не присвою значение Item.Data в OnData, то и не получу его в остальных модулях, т.е. значение Data должно присваиваться из обработчика OnData. А жаль, всё было так хорошо задумано :)



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

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

Наверх





Память: 0.45 MB
Время: 0.004 c
1-79310
Egen
2002-02-07 13:03
2002.02.25
Освобождение ресурсов


3-79285
Egen
2002-01-31 07:39
2002.02.25
Русификация Database Desktop


3-79258
tatk
2002-01-30 19:18
2002.02.25
Автоинкрементное поле


1-79337
ruslan_r
2002-02-08 06:29
2002.02.25
Программирование


14-79438
White Boy
2002-01-03 21:34
2002.02.25
Лицензия на Delphi





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский