Einzelnen Beitrag anzeigen

Benutzerbild von Zodi
Zodi

Registriert seit: 18. Jul 2017
Ort: Berlin
45 Beiträge
 
Delphi XE7 Ultimate
 
#3

AW: VirtualStringTreee auf Eintrag prüfen.

  Alt 14. Jun 2020, 19:54
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.
Pascal
  Mit Zitat antworten Zitat