Текущий архив: 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.45 MB
Время: 0.01 c