[Delphi] TreeView i XML

0

Cześć!

Jak dodac/usunac nowy element do drzewka w TreeView i zapisac do pliku XML? Budowa nie jest skomplikowana.

TreeView:

Pierwszy Temat
|- Pierwszy podpunkt
Drugi Temat
|- Drugi podpunkt

A w pliku XML:

<drzewko>
<Pierwszy temat>
<opis>pierwszy podpunkt</opis>
</Pierwszy temat>
<Drugi temat>
<opis>Drugi podpunkt</opis>
</Drugi temat>
</drzewko>

Może i jest to banalnie proste, z zapisem sobie poradziłem a z dodawaniem/usuwaniem sam widzisz.

0

Jeżeli chodzi Ci o dodanie do drzewka nowego elementu, to:

A) Musisz zadeklarować zmienną typu bodajże TTreeNode;
B) Musisz wiedzieć gdzie chcesz dopisać, tzn do którego już istniejącego elementu i tak, jeśli chcesz dodać "brata" do zaznaczonego to:

var
  node : TTreeNode;
begin
  node := TTreeView1.items.Selected.GetParentNode.AddChild;
  node.caption := 'Sramtatamta';
  node. ..... //tutaj ustawiasz jakieś dalsze parametry węzła...
end;

Z "dzieckiem" tak samo tylko wywalisz fragment GetParentNode.
Aha, pisane z palca, i nie pamiętam czy nazwy metod dokładnie takie same ale myślę że znajdziesz w helpie albo podpowiedzi delphi. Generalnie ważna jest metoda.

0

A nie wiesz, jak po kliknięciu na item w treeviem wyświetlić dane z xml w memo?

procedure TForm1.treeClick(Sender: TObject);
var
tn : TTreeNode;
i: integer;
begin
XMLDocument1.LoadFromFile('Project1.xml');
XMLDocument1.Active:=true;

for i:=0 to Pred(XMLDocument1.ChildNodes.Count) do
begin
if XMLDocument1.Node.LocalName = ???? then
Memo1.Lines.Add(XMLDocument1.DocumentElement.ChildNodes[i].Attributes['text']);
end;
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1