![]() |
+ vorm Ordnere in der ShellTreeView
Hi hab mal ne Frage
Bekommt man eigentlich das + zeichen zum öffnen der unterordner irgendwie weg??? ind der ShellTreeview gruss sascha |
Re: + vorm Ordnere in der ShellTreeView
Hi,
meinst du das?
Delphi-Quellcode:
ShellTreeView1.ShowButtons:= false;
|
Re: + vorm Ordnere in der ShellTreeView
genau das wars :spin2:
jetzt hab ich nur das Problem das ich gedacht habe, das ich die unter ordner nicht mehr aufmachen kann, aber das geht ja trotzdem noch per doppelklick auf den ordner, kann man das auch abschalten das das nicht mehr geht. |
Re: + vorm Ordnere in der ShellTreeView
Man könnte noch im onExpanding das Aufklappen verhindern:
Delphi-Quellcode:
Edit: Code geändert, habe noch was besseres gefunden.
procedure TForm1.ShellTreeView1Expanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean); begin if Node <> ShellTreeView1.Items.Item[0] then AllowExpansion := false; end; |
Re: + vorm Ordnere in der ShellTreeView
Das war genau das was ich gesucht habe
kann mann eigentlich einen Ordner definieren bei dem das gehen soll un bei den anderen so es ganz normal fünktionieren?? nur ne frage das eigentliche problem ist gelöst Danke |
Re: + vorm Ordnere in der ShellTreeView
Hi,
ja das ist möglich in dem du das Event von oben noch ein bisschen änderst. Folgender Code lässt das expanden nur bei dem ersten Node zu
Delphi-Quellcode:
procedure TForm1.TreeViewExpanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean); begin if Node = TreeView.Items[0] then AllowExpansion := True else AllowExpansion := False; end; gruß |
Re: + vorm Ordnere in der ShellTreeView
Zitat:
Delphi-Quellcode:
mfG
procedure TForm1.TreeViewExpanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean); begin AllowExpansion := Node = TreeView.Items[0]; end; mirage228 |
Re: + vorm Ordnere in der ShellTreeView
jup, hast recht, ist übersichtlicher. Kommt aber aufs gleiche raus.
|
Re: + vorm Ordnere in der ShellTreeView
Und wenn ein weiterer Node zugelassen werden soll
bei mir ist es z.b. so C:\Dokumente und Einstellungen\Ordner1\Ordner2\ da die shellTreeview ja schon den ersten anlegt (Ein Fehler der Komponente???) bei soll man alles unter dem ordner 2 nicht mehr öffnen können wie erweiter ich dann das Node |
Re: + vorm Ordnere in der ShellTreeView
Zitat:
genau das gleiche machte mein Code übrigens auch. :wink: Zitat:
Delphi-Quellcode:
Jetzt werden vom ersten Ordner die Unterordner angezeigt und gegeben falls auch vom Ordner 'C:\Dokumente und Einstellungen\Ordner1\Ordner2'. Eventuell muss man noch die Groß- und Kleinschreibung des Pfades beachten. Kann natürlich sein, dass es da noch was besseres gibt.
procedure TForm1.ShellTreeView1Expanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean); var i: integer; begin for i := 0 to TShellTreeView(Sender).Items.Count - 1 do if TShellTreeView(Sender).Items.Item[i]= Node then if TShellTreeView(Sender).Folders[i].PathName= 'C:\Dokumente und Einstellungen\Ordner1\Ordner2' then exit; AllowExpansion:= Node= TShellTreeView(Sender).Items.Item[0]; end; EDIT: habe jetzt doch noch eine einfachere Möglichkeit gefunden:
Delphi-Quellcode:
procedure TForm1.ShellTreeView1Expanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean); begin if TShellTreeView(Sender).Folders[Node.AbsoluteIndex].PathName <> 'C:\Dokumente und Einstellungen\Ordner1\Ordner2' then AllowExpansion:= Node= TShellTreeView(Sender).Items.Item[0]; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz