-
Добрый день, уважаемые мастера.
Имеется структура,
type
PQuestion=^TQuestion;
TQuestion=record
Name: String[255];
ResultQCount:Integer;
ResultCount:Integer;
ResiltText: array[0..10] of String[255];
ResiltValue: array[0..10] of boolean;
end;
Заполняю ... и загружаю в
with QuestionTreeView^ do begin
TVInsert( 0, 0,NewQuest.Name);
Font.FontStyle:=[fsunderline];
end;
У меня в начале была версия 1.91 kol'а потом. Потом установил 2.88.
В первой Node'ы есть. Во второй нет.
Вопрос как реализовать следующую процедуру для 2.88
Процедура при событии Change должна подгружать
в ListView (в моём ResultView) с QuestionTreeView
соответствующие data.
Вариант на VCL:QuestionTreeViewChange(Sender: TObject;
Node: TTreeNode);
var
i:Integer;
begin
ResultView.Items.Clear;
if Node=nil then exit;
for i:=0 to PQuestion(node.Data).ResultCount-1 do
with ResultView.Items.Add do
begin
Caption:=PQuestion(node.Data).ResiltText[i];
if PQuestion(node.Data).ResiltValue[i]=true then
begin
SubItems.Add('Да');
ImageIndex:=2;
end
else
begin
SubItems.Add('Нет');
ImageIndex:=1;
end;
end;
end;
Вариант на Kol:?
Спасибо. -
Дмитрий К © (17.12.09 21:05) [1]OnTVSelChanging
TVItemData -
Дмитрий К Спасибо за быстрый ответ.
реализовал так:procedure QuestionTreeViewSelChange(Sender:pcontrol);
var i:integer;
begin
ResultView.Clear;
//провека на пустые поля
index:=QuestionTreeView.TVSelected;//showmessage(int2str(index));
for i:=0 to PQuestion(QuestionTreeView.TVItemData[index]).ResultCount-1 do begin
if PQuestion(QuestionTreeView.TVItemData[index]).ResiltValue[i]=true then begin
ResultView.LVItemAdd('');
ResultView.LVItems[i,1]:='Да';
ResultView.LVSetItem(i,0,PQuestion(QuestionTreeView.TVItemData[index]).ResiltTex t[i],2, [], 0, 0, 0);
end else begin
ResultView.LVItemAdd('');
ResultView.LVItems[i,1]:='Нет';
ResultView.LVSetItem(i,0,PQuestion(QuestionTreeView.TVItemData[index]).ResiltTex t[i],1, [], 0, 0, 0);
end;
end;
end;
Вот только меня смущает что событие SelChange
происходит раньше чем кликнуть на TVItem, то есть сразу появляется.
А не должно.:( -
Доброе время суток.
Вопрос по процедуре.
Почему при вызове в другом окне
процедура не выводит картинки в ListView??? -
Всё, поправил;)