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

Вниз

OnSelectItem в listView   Найти похожие ветки 

 
$Hic0 ©   (2003-10-15 11:47) [0]

Добрый день.
Обрабатываю выбор элемента следующим кодом:

procedure TMainForm.FileListSelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
Var LData : TListData;
begin
If FileList.Selected<>nil then
Begin
LData:=TListData.Create;
LData:=TListData(FileList.Selected.Data);
ShowMessage(LData.VectorS);
End;
end;


Анализируя то что выдает ShowMessage, вижу что какой-бы эелемнт я не выбирал выбирается последний из списка. В чем может быть дело? Заранее спасибо.


 
clickmaker ©   (2003-10-15 12:08) [1]

LData:=TListData.Create;
LData:=TListData(FileList.Selected.Data);

Это как?

LData хранится в Data? Тогда зачем Create ?

И тогда уж так

LData := TListData(Item.Data);


 
$Hic0 ©   (2003-10-15 12:22) [2]

Create не нужен, согласен, но он и не мешает ИМХО
С кодом тоже несущественно, пробовал и так:

procedure TMainForm.FileListSelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
Var LData : TListData;
begin
If Selected then
Begin
LData:=TListData(Item.Data);
ShowMessage(LData.VectorS);
End;
end;


Что в лоб что по лбу :) Предвосхищая вопрос, скажу что для разных итемов в Item.Data хранятся разные VectorS, порверял, ошибка именно в этом коде :(


 
clickmaker ©   (2003-10-15 12:28) [3]

А как заполняешь Data ? И как проверял ?


 
$Hic0 ©   (2003-10-15 12:56) [4]

ListData.ID:=ID;
ListData.VectorS:=VectorS;
ListData.VectorB:=VectorB;
FileList.AddItem(s,ListData);
Проверял дельфевым дебагером :)


 
clickmaker ©   (2003-10-15 13:25) [5]

Глупый вопрос: если AddItem в цикле вызываешь, TListData.Create вызываешь для каждой итерации ?


 
$Hic0 ©   (2003-10-15 13:40) [6]

Нет!!! Не глупый!!! Боже какой я идиот :) Я вот с утра сижу, мать его так, как полено перед монитором :(
Спасибо большое, куда мои глаза приделаны интересно. с руками вместе :)
Спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
6-89443
saperxl
2003-08-29 15:10
2003.10.27
Delphi -> Outlook Express


1-89305
XenonXX
2003-10-12 02:13
2003.10.27
ListBox -> items -> font-> color


4-89634
Lexer
2003-08-22 14:38
2003.10.27
Как достать список свойств объекта?


1-89255
Петр
2003-10-16 10:55
2003.10.27
Как программно выделить строку в DBGrid? Или вызвать OnCellClick?


1-89351
Yuraz
2003-10-16 09:45
2003.10.27
Как отключит скринсавер на время выполнения программы?