Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TOpenPictureDialog Verzeichiswechsel (https://www.delphipraxis.net/149911-topenpicturedialog-verzeichiswechsel.html)

wbdelpprax 2. Apr 2010 02:35


TOpenPictureDialog Verzeichiswechsel
 
Hallo,
ich habe folgendes Problem:
In meinem Programm zum Bildbetrachten gibt es einen OpenPictureDialog. Wenn ich ein Verzeichnis ausgewählt habe, werden alle Bilder darin in eine ListBox geladen. Wenn ich jetzt weitere Bilder laden will, dann wird der Dialog erneut mit dem vorherigem Verzeichnis geöffnet. Um ein davor liegendes oder ein dahinter liegendes Verzeichnis zu öffnen, kann man nun das Icon ‚Up One Level’ klicken – gelangt dann aber natürlich in das übergeordnete Verzeichnis, von dem aus man sich erst wieder umständlich zu dem gewünschtem Verzeichnis durch hangeln muss.

Ich möchte dem user aber die Möglichkeit geben, das davor oder dahinter liegende Verzeichnis zu öffnen, ohne erst wieder ganz von vorne anzufangen.

Bei einem Übergeordnetem Verzeichnis mit sehr vielen Unterverzeichnissen (wie es bei Bildern nicht selten ist), ist es sehr mühsam, sich erst jedes Mal wieder zu dem vorher besuchtem Verzeichnis durch zu hangeln.

Zum besserem Verständnis des Ganzen hier mal der Versuch, es graphisch darzustellen:

http://h1.ripway.com/riplock/test/baum.jpg



Vielleicht hat ja wer eine Lösung des Problems - bin schon sehr gespannt.
Gruß Andreas!

Luckie 2. Apr 2010 04:35

Re: TOpenPictureDialog Verzeichiswechsel
 
Merk dir doch einfach das ausgewählte Verzeichnis und setze es beim nächsten öffnen als InitialDirectory oder wie die Eigenschaft heißt. Allerdings normalerweise "merkt" sich der Datei-Öffnen-Dialog das zu letzt ausgewählte Verzeichnis. Oder hast du was an den Einstellungen geändert?

wbdelpprax 2. Apr 2010 10:37

Re: TOpenPictureDialog Verzeichiswechsel
 
Hi Lucki,
das habe ich natürlich sofort als erstes ausprobiert. Allerdings ist es so, dass dann zwar zum InitialDir gegangen wird, aber dort werden nicht die Folder angezeigt (so dass man den davor oder dahinter auswählen könnte), sondern wieder die files des folders. Und damit stecke ich dann in dem gleichem Dilemma, denn ich kann wieder nur zu dem übergeordneten Verzeichnis wechseln.

Sorry, aber das war die Loesung nicht - trotzdem vielen Dank 8-)
Gruß Andreas!

fatalerror 2. Apr 2010 11:25

Re: TOpenPictureDialog Verzeichiswechsel
 
Der Openpicture Dialog ist ein Standard Dialog und gewährt somit, dass jeder User sich mit diesem Dialog zurechtfindet. Wenn du zusätzliche oder andere Funktionen benötigst, dann musst du dir halt einen eigenen Dialog bauen. Wobei ich da eher zurückhaltend wäre, gewiefte Windows Nutzer würden wohl eher irritiert sein als einen "Nutzen" aus deinen Ideen zu ziehen.

Komponenten um einen Dialog mit einem Treeview (ala deiner Grafik) zu erstellen findest du bei Mustangpeak.net Virtual Shelltools

DeddyH 2. Apr 2010 11:27

Re: TOpenPictureDialog Verzeichiswechsel
 
Wenn man auf die Bildvorschau verzichten kann, ginge es auch ganz nett mit SelectDirectory.

wbdelpprax 6. Apr 2010 04:03

Re: TOpenPictureDialog Verzeichiswechsel
 
Hallo Leute,
und vielen Dank fuer die Beitraege. Leider komme ich erst heute dazu, Euch zu antworten.

fatalerror:
Zitat:

Der Openpicture Dialog ist ein Standard Dialog und gewährt somit, dass jeder User sich mit diesem Dialog zurechtfindet. Wenn du zusätzliche oder andere Funktionen benötigst, dann musst du dir halt einen eigenen Dialog bauen. Wobei ich da eher zurückhaltend wäre, gewiefte Windows Nutzer würden wohl eher irritiert sein als einen "Nutzen" aus deinen Ideen zu ziehen.
Sicher zu bedenken - wobei ich der Meinung bin, das sich ein interessierter User schon mal ein wenig umstellt, wenn er die Software mag. Einige Beispiele sind ja z.b. Kai Power Tools (ein Präsentation Programm, das ein wenig andere Wege geht), Gimp mit seinen fliegenden Fenster und den von Linux stammenden Dateiauswahl-Menü, oder auch einige Oberflächen für Internet Radio (z. b. nexus radio). Aber generell stimme ich mit Deinem Argument überein.

Zitat:

Komponenten um einen Dialog mit einem Treeview (ala deiner Grafik) zu erstellen findest du bei Mustangpeak.net
Die Komponente werde ich mir mal ansehen. Allerdings benutze ich die freie Turbo Delphi Version und da ist es ein wenig schwieriger, fremde Komponenten einzubauen. Wahrscheinlich werde ich mkit dem Standard Dialog leben. War nur so eine Idee und manchmal bekommt man ja doch noch andere Tipps

DeddyH:

Zitat:

Wenn man auf die Bildvorschau verzichten kann, ginge es auch ganz nett mit SelectDirectory.
SelectDirectory kenne ich natürlich, aber gerade bei einem Programm, was Bilder für eine Dia Show oder so zum Betrachten benutzt ist es meiner Meinung nach schon sinnvoller die Dateien und die Vorschau zu sehen.

Trotzdem vielen Dank für die Anregung!

Bis denn
Andreas!

Medium 6. Apr 2010 04:36

Re: TOpenPictureDialog Verzeichiswechsel
 
Zitat:

Zitat von wbdelpprax
Einige Beispiele sind ja z.b. Kai Power Tools (ein Präsentation Programm, das ein wenig andere Wege geht), Gimp mit seinen fliegenden Fenster und den von Linux stammenden Dateiauswahl-Menü, oder auch einige Oberflächen für Internet Radio (z. b. nexus radio).

KPT war seiner Zeit revolutionär, und hat daher viel Aufmerksamkeit genossen. Wo sind die Konzepte von damals heute? (Rückwirkend würde man das heute Neudeutsch "Hype" nennen denke ich.) GIMP hält sich an die Konzepte, die der Branchenführer Adobe Photoshop eingeführt hat, u.a. auch die fliegenden Fenster - ein Grund übrigens, warum ich Corel jederzeit vorziehen werde, mich macht dieses Fenstergefledder wahnsinnig. Das Browsing darin wirkt ausserdem eher noch verschlimmernd. Nexus Radio kenn ich nun nicht :)

Ein relativ sinnvoller Kompromiss wäre hier evtl. ein eigener Dialog, der links einen Tree der dem im Explorer gleich ist, in der Mitte die Dateien zeigt - auch in der gewohnten Fassung mit einstellbarer Ansicht etc., und rechts eine größere Vorschau auf die aktuelle Selektion. Ganz ganz links könnte man evtl. noch diese Leiste ala "Computer; Netzwerk; Favoriten; blah" mit aufnehmen, die sich auch in einigen Dialogen in freier Wildbahn findet.

Solange deine Zielgruppe nicht eine ganz spezifische ist, die historisch andere Standards gewohnt ist (wie GIMP), ist es mehr als nur ratsam sich an die Standards des übergeordneten Systems zu halten, in diesem Falle Windows. Natürlich sind manche User gewillt sich umzugewöhnen, der weit überwiegende Teil wird sich aber denken "Böh, find da nix, sieht alles anders aus, ist Mist.", gefolgt von Deinstallation. Ich selber bin da nicht viel anders: Wenn ich ein Tool suche um "mal eben" etwas zu tun, kommt etwas worin ich mich erst eingewöhnen muss für maximal 10 Minuten auf meine Platte - es sei denn es ist weit und breit die einzige Alternative, und evtl. etwas was ich produktiv im Job einsetzen werde. Ich bin aber eher gewillt Zeit in die Suche einer besseren Alternative zu stecken, als meinen Workflow umzukrempeln. Un ja, das fängt natürlich schon bei so Kleinigkeiten schon merklich an!
Daher auch mein dringender Rat: Im Interesse deiner Benutzer, und in deinem ureigenen: Füge deine GUI etablierten Standards deiner Zielgruppe. Immer!

Edit: Das heisst nicht, dass man nicht ab und an mal was neues versuchen sollte! Nur sollte das dann mit großer Vorsicht bedacht werden, und im Idealfall Anwendertests vor Markteinführung bestanden haben. Auch sollte man die Dinge sachte angehen, im generellen Stil bleiben, und ggf. auch für ein paar Versionen einen Fallback auf althergebrachtes anbieten - je nach dem wo man halt grad was dreht - alles Ermessenssache natürlich.

wbdelpprax 6. Apr 2010 04:51

Re: TOpenPictureDialog Verzeichiswechsel
 
Hi Medium,
dem ist eigentlich nichts hinzu zufügen - ich werde mich an die Standards halten! Es ist ja auch nicht das wichtigste Feature in dem Programm :wink:

Vielen Dank an alle - für mich ist damit dieses Thema erledigt!

Gruß Andreas!


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