ttreeview knoten umbenennne
-
hey wie könnte ich es einrichten, dass neu hinzugefügte Knoten gleich markiert und bereit sind zur Umbenennung durch den Benutzer (so wie es im Explorer ist, wenn man einen neuen Ordner hinzufügt) die eigenschaft Cut hat sich vielversprechend angehört, hat aber nicht das bewirkt, was ich wollte
-
Wenn Du einen neuen Eintrag erzeugst, erhälst Du doch eine neue TTreeNode-Instanz. Diesen Zeiger brauchst Du nur der Eigenschaft TTreeView::Selected zuzuweisen.
-
ja das habe ich schon vrstanden und auch gemacht.
Ich möchte aber, dass man quasi gleich nachdem man ihn erstellt hat einen Neuen Namen für ihn eingeben kann(direkt im Baum), ohne, dass man ihn nochmal extra anklicken muss. So wie im Explorer.
-
also explorer war hier als positiv beispiel zu verstehen.
-
Hallo
es sollte reichen, mit der WinAPI-Funktion SendMessage die Taste F2 an den TreeView zu senden.
bis bald
akari
-
Oder noch einfacher: für den TreeNode die Methode "EditText" aufrufen...
-
Th schrieb:
Oder noch einfacher: für den TreeNode die Methode "EditText" aufrufen...
Wobei darauf zu achten ist, dass das TTreeView nicht auf ReadOnly steht.
-
ah sehr gut

*komisch - bei mir war die Funktion EditText gar nicht in der MethodenListe aufgeführt
-
Da hab ich doch glatt noch eine Frage, das ist aber auch die Letzte (ich schwör

Das Event OnEdited wird irgendwie aufgerufen bevor Die Änderung der Beschriftung des Baums und der Sortierungsreihenfolge durchgesetzt wurde.
Ich möchte jetzt aber den Baum jedesmal speichern nachdem er editiert wurde.
Wie kann ich das realisieren? Ich habe kein anderes passendes event gefunden
-
okey ich hab eine Lösung.
damit komm ich vielleiht nicht in edn Programmiererhimmel aber was sollsvoid __fastcall TForm1::TreeView1Edited(TObject *Sender, TTreeNode *Node, AnsiString &S) { Node->Text = S; BaumSichern(); }