TreeNode - Existiert ein untergeordnetes Objekt?
-
Hi,
ich habe einen Baum (TreeView) und da wird ein Element ausgewählt. Nun will ich prüfen, ob es unter diesem Element noch weitere Elemente gibt.
TTreeNode *TempNode; TTreeNode *TempNode2; TempNode = TVCategorystructure->Selected; if(TempNode) { TempNode2 = TempNode->GetNext(); if (TempNode2 == NULL) ShowMessage("endknoten"); else ShowMessage("kein endknoten"); }Leider wird mir "kein endknoten" angezeigt. Ich sehe da aber keinen Fehler. Wer hat eine Idee?
hennes
-
Hallo
so wie ich das verstehe, brauchst du bloß
if (TempNode->HasChildren) { ... }prüfen
bis bald
akari
-
besten dank,
hat wunderbar geklappt. verstehe zwar nicht wieso mein code nicht ging und ich das haschildren in der hilfe nicht gefunden habe, aber nun ist s ja ach egal.
hennes
-
Hallo
weil GetNext() denn nächsten Node zurückgibt, unabhängig von der Ebene. Erst bei letzter aller gesamten Nodes kommt NULL zurück. Damit kann man also alle Nodes durchiterieren, wie es auch im Beispiel dazu dargestellt wird.
Schau dir einmal die anderen Get...() Methoden an, dann merkst du die Unterschiede.bis bald
akari