Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   ShellTreeView (https://www.delphipraxis.net/207849-shelltreeview.html)

oldmann 9. Mai 2021 18:48

ShellTreeView
 
Hallo,

ich habe in Verbindung mit DirectoryListBox von einer Komponente 'ShellTreeView' gelesen. Diese sollte sich besser zum Anzeigen von Verzeichnissen eignen.
Leider kann ich eine solche Komponente in meinem Delphi nicht finden.
Ich habe Delphi Tokyo 10.2.2.
Kann mir da vielleicht jemand auf die Sprünge helfen?
Wo finde ich diese Komponente ??

Gruß Oldmann

DeddyH 9. Mai 2021 18:51

AW: ShellTreeView
 
IIRC ist die Komponente Teil der Virtual ShellTools. Das müsste über GetIt zu beziehen sein.

himitsu 9. Mai 2021 19:05

AW: ShellTreeView
 
Jupp, GetIt "Mustangpeak VirtualShell" geht.

Die Originalwebseite www.mustangpeak.net listet den VST schon lange nicht mehr.
Aber der uralte Download von https://sourceforge.net/projects/embtvstools/ geht existiert auch noch. (auch wenn Emba inzwischen nach GitHub umgezogen ist)

oldmann 10. Mai 2021 08:50

AW: ShellTreeView
 
Hallo,

mit den Links konnte ich nicht viel anfangen.
Worum geht es:
Ich hab ein meinem Backup Programm eine DirectoryListBox und eine FileListBox.
Siehe Code:
Delphi-Quellcode:
procedure TBack5.DirectoryListBox2Change(Sender: TObject);
begin
  FileListBox1.Directory := DirectoryListBox2.Directory;
  Edit3.text:= DirectoryListBox2.Directory;
  Edit4.Text:=ExtractFilePath(Application.ExeName);
end;
In der DirectoryListBox kann ich Hauptverzeichnisse ohne Probleme in der FileListBox anzeigen und weiterverarbeiten.
Sowie ich aber ein Unterverzeichnis öffnen will, werden keine Dateien in der FileListBox angezeigt.
Wo liegt das Problem ??

Gruss Oldmann

KodeZwerg 10. Mai 2021 10:31

AW: ShellTreeView
 
*entfernt, ich war zu voreilig, emil hat recht, ich bin d..f*

venice2 10. Mai 2021 10:36

AW: ShellTreeView
 
Was meinst du was er hier tut? ;)

Delphi-Quellcode:
  Edit3.text:= DirectoryListBox2.Directory;
  Edit4.Text:=ExtractFilePath(Application.ExeName);
Eventuell mußt du der FileListBox1 noch mitteilen welche Extension angezeigt werden sollen..

TurboMagic 10. Mai 2021 10:44

AW: ShellTreeView
 
Hallo,

schon mal die Konopka Signature Controls angeschaut?
Die sind bei Delphi ja als Bonus via GetIt nachinstallierbar und die haben
ein RxShellTree Control.

Habe eben etwas damit rumgespielt und es jetzt im Prinzip so hinbekommen
wie ich es wollte.

Grüße
TurboMagic

oldmann 11. Mai 2021 13:04

AW: ShellTreeView
 
Hallo TurboMatic,

kannst Du mir dazu etwas genaueres sagen.
Ich habe in GetIt Manager nachgeschaut und nichts über "RxShellTree"
gefunden.
Wo muß ich da sonst suchen?

Gruß Olmann

stifflersmom 11. Mai 2021 14:21

AW: ShellTreeView
 
Liste der Anhänge anzeigen (Anzahl: 1)
Und Du findest wirklich nicht die Shelltools??
Siehe Grafik.

TiGü 11. Mai 2021 14:32

AW: ShellTreeView
 
Bester Screenshot seit Langem! :stupid:

stifflersmom 11. Mai 2021 14:37

AW: ShellTreeView
 
Liste der Anhänge anzeigen (Anzahl: 1)
Gebe ich Dir Recht..,..
Ich machs mal etwas größer

KodeZwerg 11. Mai 2021 14:37

AW: ShellTreeView
 
Das klassische example kannst Du von hier laden, falls es Dir hilft.

oldmann 11. Mai 2021 16:24

AW: ShellTreeView
 
Hallo,

ich habe die RzShellTree jetzt gefunden und installiert.
Jetzt habe ich jedoch das Problem, wie ich den Code ansprechen muss.
Wie bekomme ich die Daten der ausgewählten Verzeichnisse in meine FileListBox.
z.B.
FileListBox1.Directory := RzShellTree1. ?????;
Vielleicht könnte man mir hier mit einem kleinen Beispiel weiterhelfen.
Vielen Dank.

Gruß Oldmann

himitsu 11. Mai 2021 16:56

AW: ShellTreeView
 
Zitat:

Zitat von KodeZwerg (Beitrag 1489154)
Das klassische example kannst Du von hier laden, falls es Dir hilft.

Emba ist schon vor Längerem zu GitHub umgezogen. (das Alte im SourceForge vergammelt seitdem etwas)

https://github.com/Embarcadero/RADStudio10.4Demos


C:\Users\Public\Documents\Embarcadero\Studio\21.0\Samples
Und nicht wundern, das installierte Demo-Verzeichnis ist immernoch mit SVN ausgecheckt, aber zeigt inzwischen auf die SVN-Schnittstelle vom GitHub.


[edit]
OH, diese uralte ShellControls-Demo wurde in aktuellen Delphis entfernt :shock:

KodeZwerg 11. Mai 2021 17:04

AW: ShellTreeView
 
Zitat:

Zitat von himitsu (Beitrag 1489180)
OH, diese uralte ShellControls-Demo wurde in aktuellen Delphis entfernt :shock:

Deswegen schrieb ich "klassisch" ;-) Seit XE7 nicht mehr dabei, zum Glück hehe

TurboMagic 11. Mai 2021 17:54

AW: ShellTreeView
 
Zitat:

Zitat von oldmann (Beitrag 1489175)
Hallo,

ich habe die RzShellTree jetzt gefunden und installiert.
Jetzt habe ich jedoch das Problem, wie ich den Code ansprechen muss.
Wie bekomme ich die Daten der ausgewählten Verzeichnisse in meine FileListBox.
z.B.
FileListBox1.Directory := RzShellTree1. ?????;
Vielleicht könnte man mir hier mit einem kleinen Beispiel weiterhelfen.
Vielen Dank.

Gruß Oldmann

Schau mal ob RzShellTree1 ein SelectedXXX Property hat. Und davon ist's glaube ich ein Feld.

KodeZwerg 11. Mai 2021 18:20

AW: ShellTreeView
 
Oder man nimmt einfach die TRzFileListBox ?!

Delphi-Quellcode:
procedure TForm3.RzShellTree1Change(Sender: TObject; Node: TTreeNode);
begin
  if not DirectoryExists(RzShellTree1.SelectedFolder.PathName) then
    Exit;
  RzFileListBox1.Directory := '';
  RzFileListBox1.Clear;
  RzFileListBox1.Directory := RzShellTree1.SelectedFolder.PathName;
  RzFileListBox1.Update;
  RzPageControl1.ActivePageIndex:=1;
end;
so hier in etwa.

oldmann 12. Mai 2021 15:52

AW: ShellTreeView
 
Hallo,

danke an KodeZwerg für das Listing.
Vielen Dank natürlich auch an alle die daran beteiligt waren.
Das Klappt mit dem Anzeigen von Unterverzeichnissen jetzt gut.
Es gibt nur ein kleines Problem.
Wenn man in der RzShellTree1 ein Verzeichnis auswählt, springt der Cursor nach kurzer Zeit immer wieder an den Anfang des Verzeichnisbaums.
Man scrollt also wieder zu dem Verzeichnis das man öffnen möchte.
Wenn man jetzt nicht schnell ist ist der Cursor schon wieder am Anfang des Verzeichnisbaums.
Das könnte einen externen Anwender schon ziemlich nerven.
Selbst ich, der nicht lange suchen muss welches Verzeichnis gebraucht wird, habe schon oft wieder von vorne anfangen müssen,da das gewünschte Verzeichnis schon wieder weg war.
Gibt es da eine Möglichkeit, dass der Verzeichnisbaum dort stehen bleibt wo man gerade geklickt hat und es nicht immer nach oben rutscht.????

Gruß Oldmann


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:58 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