Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   SelectDirectory() Vorauswahl? (https://www.delphipraxis.net/192126-selectdirectory-vorauswahl.html)

zobien123 21. Mär 2017 14:59

SelectDirectory() Vorauswahl?
 
Hallo Zusammen,

folgendes Problem: Mit SelectDirectory() öffne ich ein Fenster, wo der Benutzer einen Ordner auswählt, aus dem dann später die Dateien geladen werden. Nun möchte ich, dass der letzte Ordner (Ordnernamen besteht aus Datum und Zeit, sprich der "jüngste" Ordner) soll bereits vorausgewählt/markiert sein, dass der Benutzer nur noch auf Enter drücken muss und so den letzten Ordner auszuwählen.

Bei Google finde ich leider nichts dazu :?

LG

Der schöne Günther 21. Mär 2017 15:21

AW: SelectDirectory() Vorauswahl?
 
Wahnsinn - Das ist ja noch dieser alte Windows 3.1-Dialog :-D

Nimm doch einfach einen
Delphi-Quellcode:
TFileOpenDialog
, kreuze unter
Delphi-Quellcode:
Options
Delphi-Quellcode:
fdoPickFolders
an und fertig. Der merkt sich sogar das zuletzt ausgewählte Verzeichnis wenn du die Anwendung schließt und später wieder startest.

Uwe Raabe 21. Mär 2017 15:49

AW: SelectDirectory() Vorauswahl?
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1364976)
Wahnsinn - Das ist ja noch dieser alte Windows 3.1-Dialog :-D

Das kommt ganz drauf an, welches overload von SelectDirectory man verwendet. Unter Berlin gibt es derer drei:
Delphi-Quellcode:
function SelectDirectory(var Directory: string;
  Options: TSelectDirOpts; HelpCtx: Longint): Boolean; overload;
function SelectDirectory(const Caption: string; const Root: WideString;
  var Directory: string; Options: TSelectDirExtOpts = [sdNewUI]; Parent: TWinControl = nil): Boolean; overload;
/// <summary> Shows a select directory dialog using IFileDialog (recommended in Windows Vista or later).
/// Multiple selection can enabled including sdAllowMultiselect flag in Options.
/// Selected directories are returned in Directories param</summary>
function SelectDirectory(const StartDirectory: string; out Directories: TArray<string>; Options: TSelectDirFileDlgOpts = [];
  const Title: string = ''; const FolderNameLabel: string = ''; const OkButtonLabel: string = ''): Boolean; overload;
Ersteres verwendet den selbstgebauten Dialog, zweiteres ruft
Delphi-Quellcode:
SHGetDesktopFolder
auf und der dritte bedient sich eines
Delphi-Quellcode:
TFileOpenDialog
.

DeddyH 21. Mär 2017 17:34

AW: SelectDirectory() Vorauswahl?
 
Delphi-Quellcode:
var
  s: string;
begin
  s := 'C:\test'; //Vorauswahl, Verzeichnis muss existieren
  if SelectDirectory('Dingsbums', '', s) then
    begin
      //Code
    end;
end;
Das sollte auch auf mit etwas älteren OS/Delphi-Versionen funktionieren.

striderx 21. Mär 2017 18:03

AW: SelectDirectory() Vorauswahl?
 
Um auf die Frage des Themen-Erstellers zurück zu kommen (weil ich auch eine solche Lösung suche):

Wie bekommt man in einem solchen Dialog den Cursor auf einen bestimmten Listeneintrag positioniert (am besten für einen TFileOpenDialog)?

zobien123 22. Mär 2017 06:36

AW: SelectDirectory() Vorauswahl?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Danke für die Antworten :thumb: aber leider ist es nicht das, was ich suche.:oops:

(siehe Screenshot)

Wenn sich das Dialog Fenster zur Zeit öffnet ist der Ordner Backup markiert (grüner Pfeil), aber ich möchte, dass der letzte Ordner in dem Ordner Backup markiert ist(roter Pfeil), denn dann muss der Benutzer nur noch Enter drücken zum übernehmen und nicht erst noch mit der Maus den letzten Ordner auswählen.:cry:

DeddyH 22. Mär 2017 06:38

AW: SelectDirectory() Vorauswahl?
 
Der Ordner Backup ist aufgeklappt, markiert ist aber der Unterordner.

zobien123 22. Mär 2017 07:47

AW: SelectDirectory() Vorauswahl?
 
Aufgeklappt ist der Backup Ordner immer und der Ordner bei dem roten Pfeil ist markiert, weil ich da drauf gedrückt hab :-D

DeddyH 22. Mär 2017 08:11

AW: SelectDirectory() Vorauswahl?
 
Wie sieht denn Dein Aufruf aus?

himitsu 22. Mär 2017 09:49

AW: SelectDirectory() Vorauswahl?
 
Diesen Dialog würde ich auch nicht empfehlen, da er sich echt besch... bedienen lässt.

Der OpenDialog im Directory-Mode ist da empfehlenswerter.


Aber ja, auch bei dem "alten" Directory-Dialog lässt sich der Ordner vorauswählen, müsste da aber mal in meinen alten Sourcen suchen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:46 Uhr.
Seite 1 von 2  1 2      

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