Autor Beitrag
Popov
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1655
Erhaltene Danke: 13

WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
BeitragVerfasst: Mo 02.02.04 01:45 
Zwar hat Tino bereits hier ein schönes Beispiel wie man eine modernes Verzeichnis-Auswahl-Dialogfenster bekommt, aber dafür muß man erst eine etwas komplizierte Funktion entwickeln oder zumindest kopiern. Hier eine Delphi eigene Variante, die, ich frage mich eigentlich warum, nicht als Komponente angeboten wird. Aus diesem Grund führt sie ein Schattendasein. Ich dagegen nutze sie gerne, denn ich muß dann nicht zuerst Code für die API Dialogbox suchen und, das ist noch wichtiger, ich kann in der Dialogbox neue Ordner erstellen. Das geht zwar auch mit der API Variante, dann wird der Code aber ganz kompliziert. Hier also die Delphi eigene SelectDirectory Variante:

ausblenden Delphi-Quelltext
1:
2:
uses
  FileCtrl;


Hier eine Funktion von mir:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
// Zeigt eine Dialogbox für Verzeichnisauswahl
function SelDir(var Dir: String): Boolean;
begin
  if not DirectoryExists(Dir) then begin
    Dir := 'c:\';
    SetCurrentDir(Dir);
  end;

  if SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt], 0then
  begin
    if Dir[Length(Dir)] <> '\' then Dir := Dir + '\';
    Result := True;
  end
    else Result := False;
end;


Beispiel:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
procedure TForm1.Button1Click(Sender: TObject);
var
  Dir: String;
begin
  Dir := 'c:\eigene dateien';
  if SelDir(Dir) then ShowMessage(Dir);
end;



Siehe auch: ...einen Verzeichnisauswahl-Dialog anzeigen? #3

_________________
Popov