Re: TreeView:einträge selbst speichern
@tigerman33
nein es können/sollen auch mehre unterpunkte erzeugt werden als nur einen.... werde ich gleich mal testen ! @marabu besten dank werde ich sorfort testen :-D |
Re: TreeView:einträge selbst speichern
@tigerman33
du hattes recht, im menue wird es richtig angezeigt in der Treeview leider nicht @@marabu kann ich leider noch nicht beurteieln, weil ich leider nicht weißt wie ich ihn aufrufen soll ich habe probiert:
Delphi-Quellcode:
aber anscheiend tut er so garnichts....
TreeNodePath(TreeView1.Items.GetFirstNode,'\');
so bis später(eine woche :( muss leider wieder nach Hause) |
Re: TreeView:einträge selbst speichern
Hallo Michael,
der Aufruf ist schon nicht schlecht. Irgendwann musst du dann auch mal das Funktionsergebnis anschauen:
Delphi-Quellcode:
Freundliche Grüße vom marabu
var
s: string; begin s := TreeNodePath(TreeView1.Items.GetFirstNode,'\'); // ... end; |
Re: TreeView:einträge selbst speichern
Delphi-Quellcode:
und wie kann ich es ändern seit tagen versuche ich das Problem zu lösen bis jetzt leider ohne sichtbaren erfolg :( :( :(
Test1\1\x
Test1\2\c <-- der hier stirbt doch, oder? |
Re: TreeView:einträge selbst speichern
@marabu
besten dank hat funktioniert:
Delphi-Quellcode:
Zum speichern und laden nutze ich einfach diese funktionen:procedure TForm5.TreeView1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin s:=TreeView1.GetNodeAt(x,y); TreeView1.Selected:=s; if s <> nil then Label2.Caption:=TreeNodePath(s,'\') else label2.Caption:=''; end;
Delphi-Quellcode:
von: http://www.swissdelphicenter.ch/
procedure LoadTreeFromFile(TreeView:TTReeView;FileName:TFileName);
var F: TFileStream; begin F := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite); try F.ReadComponent(TreeView); finally F.Free; end; end; procedure SaveTreeToFile(TreeView:TTReeView;FileName:TFileName); var F: TFileStream; begin F := TFileStream.Create(FileName, fmCreate or fmShareCompat); try F.WriteComponent(TreeView); finally F.Free; end; end; edit: ich glaube ich habe jetzt ein anders problem: und zwar beim meinem TMenuitem ! :oops: |
Re: TreeView:einträge selbst speichern
Probier mal folgenden Code, den ich gerade geschrieben habe, da ich mich auch wieder damit auseinandersetzen musste :D
Der Code ist für Text-Dateien in der Form
Code:
C:\WINDOWS\system
C:\WINDOWS\system32 D:\Eigene Dateien\... D:\Eigene Dateien\...\Eigene Bilder\... ...
Delphi-Quellcode:
//Zum Kopieren von einer Position bis zu einer anderen Position
function CopyFT(Eingabe: String; Von, Zu: Integer): String; begin Result := Copy(Eingabe, Von, Zu-(Von-1) ); end; //Um ein Glied eines Pfades zu bekommen function GetPart(S: String; const Index: Integer): String; var Len, P, C: Integer; begin S := IncludeTrailingBackslash(S); Len := Length(S); P := 0; C := 0; repeat if C = Index then begin Result := CopyFT(S, P+1, PosEx('\', S, P+1)-1); Break; end; P := PosEx('\', S, P+1); Inc(C); until P = Len; end; //Um zu bestimmen wieviele Glieder ein Pfad besitzt function PartsCount(S: String): Integer; var Len, P: Integer; begin S := IncludeTrailingBackslash(S); Len := Length(S); P := 0; Result := 0; repeat P := PosEx('\', S, P+1); Inc(Result); until P = Len; end; //Zum Laden einer Stringlist in ein TTreeView procedure StringListToTree(var L: TStrings; var Tree: TTreeView); var S, Part: String; X, N, I: Integer; // X .. Zeile // I .. Parts // N .. Nodesuche Node: TTreeNode; Found: Boolean; begin Tree.Items.Clear; Tree.Items.Add(NIL, 'START'); for X := 0 to L.Count-1 do begin Node := Tree.Items[0]; S := L[X]; for I := 0 to PartsCount(S)-1 do begin Part := GetPart(S, I); Found := False; for N := 0 to Node.Count-1 do begin if Node[N].Text = Part then begin Node := Node[N]; Found := True; Break; end; end; if not Found then begin Node := Tree.Items.AddChild(Node, Part); end; end; end; end; |
Re: TreeView:einträge selbst speichern
Besten dank, werde ich bei einer gelentheit mal ausprobieren *G*
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz