Jak skonwertować pozycje z komponentu TreeView do JSON.
Czyli Nagłówek sekcji, kilka podrzędnych, znowu nagłówek i kilka podrzędnych.
A później te dane trzeba odtworzyć.odtworzyć
Na razie mam tyle, ale nie wiem jak zróbić listę elementów podrzędnych do jednego nagłówka.
var obj : TJSONObject;
nodeNaglowek, nodePodrzedny : TTMSFMXTreeViewNode;
lista_podrzednych: TJSonArray;
i,j : Byte;
begin
try
obj := TJSONObject.Create;
for i := 0 to TMSFMXCheckedTreeView1.Nodes.Count - 1 do
begin
nodeNaglowek:= TMSFMXCheckedTreeView1.Nodes.Items[i];
obj.AddPair(TJSONPair.Create(nodeNaglowek.Values[i].Text, TJSONNumber.Create(nodeNaglowek.Tag)));
lista_podrzednych:= TJSonArray.Create;
for j := 0 to nodeNaglowek.Nodes.Count - 1 do
begin
nodePodrzedny := nodeNaglowek.Nodes.Items[j];
lista_podrzednych. AddElement(TJSONValue.Create(nodePodrzedny .Values[0].Text, TJSONNumber.Create(nodePodrzedny.Tag)));
end;
obj.AddPair(TJSONPair.Create(nodeNaglowek.Tag, lista_podrzednych));
end;
finally
FreeAndNil(obj);
end;
Ewentualnie to nie musi być JSON. Może być inny string;
P.S. Robię to na komponencie TMSFMXCheckedTreeView