So, da bin ich wieder. Es ist etwas seltsam mit diesem Fehler. Also erstmal skizziere ich die Baumstruktur:
Delphi-Quellcode:
+ A (Quelle)
- B
- C
- D
+ E
- F
- G (Ziel, hier sollen alle Children von A dran)
Ich will einen neuen Knoten einfügen. Zum Zeitpunkt meines CopyTo hängt der neue Knoten G bereits im Baum. Dann folgt
Form1.VST1.CopyTo(Node,currentNode,amInsertAfter,false);
Node ist der Quellknoten (geprüft) und currentNode der Zielknoten (geprüft). Trotzdem kommt die Fehlermeldung, als wenn, wie schon vermutet, irgendwo eine Endlosschleife läuft. Aber die kann ich nirgends sehen.
Dann habe ich mal aus true ein false gemacht, also ChildrenOnly disabled. Das klappt, aber mit seltsamen Endergebnis:
Delphi-Quellcode:
+ A (Quelle)
- B
- C
- D
+ E
- F
+ A (Kopie der Quelle)
- B
- C
+ G (eigentliches Ziel)
Er hat zuerst Knoten G korrekt als Ziel erkannt, macht aber eine Kopie von A und hängt diesen an nil an. Aber wieso? Jetzt verstehe ich gar nichts mehr