hihi,
sorry, ich muss nochmal nachfragen: ich bekomme es zwar hin, überall einen entsprechenden Zusatzeintrag anzufügen, aber nicht, wie ich jetzt die jeweiligen Ebenen via MoveTo dorthin verschiebe. Konkreter:
Delphi-Quellcode:
var
knoten: ttreenode;
i: integer;
if ((radiobutton1.checked) or (radiobutton2.checked)) and (checkbox5.checked) then
begin
//In jeden Knoten POS setzen
tree.Items.Add(nil, 'POS1');
for i:=0 to tree.items.count-1 do with tree do
if tree.Items.Item[i].HasChildren then
begin
knoten:= tree.Items.Item[i+1];
tree.Items.Add(knoten, 'POS1');
end;
//Bisherige Strukturen nach jeweils POS verschieben
for i:=0 to tree.items.count-1 do
if tree.Items.Item[i].Text<>'POS1' then tree.items.item[i].MoveTo(?!?)
end;
Ich bin mir da gerade vor allem logisch noch unsicher, würde es so versuchen wollen (allein mir fehlt die Technik dazu
- Schleife:
- Gehe auf EBENE0 alle Knoten/Items durch und verschiebe sie unter dasjenige POS1, das auf gleicher EBENE0 ist.
- Gehe auf EBENE0+1 alle Knoten/Items durch und verschiebe sie unter dasjenige POS1, das auf gleicher EBENE0+1 ist.
usw.
Schleife ist klar.
Verschieben zumindest in der Theorie auch klar.
Ermittlung von "POS1" via indexOf.
ABER: Wie kann ich prüfen, auf welcher Hierarchieebene ich bin bzw. wie finde ich "POS1" auf der jeweiligen Ebene?!?
Kann mir da jemand auf die Sprünge helfen?
Danke und Gruß,
der frieder