Форум: "Основная";
Текущий архив: 2004.06.27;
Скачать: [xml.tar.bz2];
ВнизПодскажите пожалуйста: Treeview&TreeNode + array Найти похожие ветки
← →
riko © (2004-06-08 16:28) [0]Скорбно признавать, но силенок у меня нехватает.
Проблема в следующем:
есть массив (FKlasses: array of TFKlas;)
есть свойства этого TFKlas -
IdNum: Integer read FIdNum write FIdNum;
Names: String read FNames write FNames;
PredokNum: Integer read FPredokNum write FPredokNum;
После некоторых манипуляций в массиве есть данные.
Как занести эти данные в TreeView, согласно:
FKlasses[i].PredokNum = номер (IdNum) предка в базе;
топчусь на месте уже неделю, все понимаю, а написать не получается.....
подтолкните, плиз.
Спасибо.
← →
dmitry99 © (2004-06-12 04:51) [1]TTreeNode.Data
← →
riko © (2004-06-12 17:26) [2]спасибо, но что-то получается не совсем так, как хотелось бы....
ладненько, придется обойтись самому ....
← →
Igorek © (2004-06-12 21:50) [3]
procedure TForm1.Button1Click(Sender: TObject);
procedure AddItems(ParentNode: TTreeNode; const Index: Integer);
var
CurNode: TTreeNode;
I: Integer;
begin
CurNode := TreeView1.Items.AddChild(ParentNode, FKlasses[Index].FNames);
for I := 0 to Pred(Length(FKlasses)) do
if (FKlasses[I].FPredokNum = Index) and (FKlasses[I].FPredokNum <> 0) then
AddItems(CurNode, I);
end;
var
Root: Integer;
begin
Root := 0;
while Root < Length(FKlasses) do
begin
if FKlasses[Root].FPredokNum = 0 then // FPredokNum = 0 признак корня
break;
Inc(Root);
end;
AddItems(nil, Root);
end;
← →
riko © (2004-06-15 13:50) [4]to Igorek:
нет, в том то и дело, что в корень я добавлять умею,даже все имеющиееся значения FKlasses с признаком FPredokNum=0, хотя огромное спасибо....
Проблема в следующем, я добавляю корни веток, но после этого не могу в необходимую ветку добавить ветви в цикле.
Застрял на том, как уникально идентифицировать корни и последующие узлы, как увязать это со значением в базе, и как последовательно сделать текущими все Items, то есть как програмно перебрать все ветви и ответления сверяя значение идентификатора (ID)со значением FPredokNum добавляемого элемента, тем более что я заранее не знаю ни колличество ни значение элементов массива.
TTreeNode.Data конечно многое пояснил, но там осталось только научится последовательно переходить по всем ветвям и узлам.
Если есть какие нибудь ресурсы именно по этому вопросу - дайте пожалуйста линк.
Спасибо.
← →
Igorek © (2004-06-15 17:56) [5]
> riko © (15.06.04 13:50) [4]
Не понял,
> Igorek © (12.06.04 21:50) [3]
- это решение задачи
> riko © (08.06.04 16:28)
?
> TTreeNode.Data конечно многое пояснил
В упор не понимаю что он тебе пояснил в контексте твоей задачи. Поясни мне. Заодно и доработай изначальную постановку задачи.
Потом обговорим [4].
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.06.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.045 c