Delphi-Quellcode:
type
PTreeData = ^TTreeData;
TTreeData = record
Column0: String; Column1: String; Column2: String; Column3: String; Column4: String; Column5: String;
end;
// Neuer Wert wird geschrieben fals nicht vorhanden
procedure WriteNode(NeuerWert: String);
var
NodeData: PTreeData;
XNode: PVirtualNode;
begin
XNode := WindowManager.VST.AddChild(nil);
NodeData := WindowManager.VST.GetNodeData(Xnode);
NodeData^.Column0 := 'Eintrag Column1';
end;
// Wert wird überprüfft
function CheckNode(FindString: String): Boolean;
var
XNode: PVirtualNode;
NodeData: PTreeData;
begin
XNode := WindowManager.VST.GetFirst;
while XNode <> nil do begin
NodeData := WindowManager.VST.GetNodeData(XNode);
if NodeData^.Column0 = FindString then begin
Result := True;
break;
end else
XNode := WindowManager.VST.GetNextSibling(XNode);
Result := false;
end;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
for i := 0 to Strings.Count -1 do begin
if Checknode(Strings.Strings[i]) = false then WriteNode(Strings.Strings[i]);
end;
end;
So habe ich es jetzt gemacht weiss aber nicht ob es der richtige Weg ist jedenfals funktioniert es.