Edycja Parent i ChildNode w TreeView

Edycja Parent i ChildNode w TreeView
XT
  • Rejestracja:prawie 22 lata
  • Ostatnio:ponad 8 lat
0

Załóżmy, że mam Treeview (jest puste)
Jednym eventem tworzę parent
i po chwili child

Parent
|
|----Child

Chcę jednak, aby użytkownik miał natychmiast po utworzeniu możliwość nadania własnych wartości przez metodę EditText. Najlepiej najpierw parent'owi, później child'owi. Jednak jeżeli robię w jednym evencie po kolei utworzenie parenta, edycja, utworzenia childa, edycja, aplikacja nie czeka na potwierdzenie końca edycji parent'a przez użytkownika, tylko natychmiast przechodzi do dalszych kroków - w efekcie do edycji child'a.

Czy da się zrobić tak, aby utworzenie child i jego EditText następowały po potwierdzeniu przez użytkownika, że zakończono pierwszą edycję?

Używam Lazarus. Dzięki za pomoc.


Jak cos zlego, to nie ja.
edytowany 1x, ostatnio: XT
PD
  • Rejestracja:ponad 22 lata
  • Ostatnio:7 minut
2

Możesz użyć inputquery, np.

Kopiuj
procedure DodajPozycjeTreeView;
var
  ANode: TTreeNode;
  nname: String;
begin
  ANode:=TreeView1.Items.Add(nil, 'Root node');
  nname:=''
  while nname='' do
  InputQuery('Node name', 'Set root node name', nname);
  ANode.Text:=nname;
  ANode:=TreeView1.Items.AddChild(ANode, 'Child node');
  nname:=''
  while nname='' do
  InputQuery('Node name', 'Set child node name', nname);
  ANode.Text:=nname;
end;
  

pozdrawiam
paweld
flowCRANE
Oj, słabe formatowanie... :(
olesio
Brak wcięć. I ewentualnie spacji po nazwach zmiennych.
PD
Kwestia przyzwyczajenia, dla mnie akurat spacje z obu stron :=, =, : czy +, a także wcięcia przy if, for, while, jeżeli brak bloku begin/end, przeszkadzają w czytaniu kodu
Azarien
@Paweł Dmitruk: khe? przecież ten while odnosi się tylko do jednej następnej linijki - i trzeba ją jakoś wizualnie odseparować od reszty kodu.
XT
  • Rejestracja:prawie 22 lata
  • Ostatnio:ponad 8 lat
0

Tak, zdaję sobie sprawę, że można to zrobić w ten sposób. Chciałem postawić jednak na totalny minimalizm i zrobić edycję bezpośrednio w TreeView przez Node.EditText. Mimo wszystko dzięki za czas. :)

Działające procedurki opracowane w sposób zaprezentowany w powyższej propozycji już mam, jednak jeśli ktoś ma pomysł, jak zrobić coś takiego przez Node.EditText, będę wdzięczny za podpowiedź.


Jak cos zlego, to nie ja.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.