![]() |
Nur Pfad - Opendialog
Hi,
wie kann ich mit Hilfe OpenDialogs eine Pfadangabe in ein Editfeld bekommen? Mit freundlichen Grüßen Jonson |
Hiermit:
Code:
In diesem Code-Beispiel ist auf einem Formular label1 und opendialog1 vorhanden.
if opendialog1.execute then
label1.caption:=ExtractFileDir(opendialog1.filename); Wird der obige Code ausgeführt, öffnet sich ein Opendialog, und der Pfad der Ermittelten Datei wird herausgefiltert.... :D MFG Thomas |
@thomasdrewermann: Danke
Jonson |
Wie geht das, wenn das Verzeichnis leer ist?
Hier etwas Coder für einen Dialog zum Auswählen eines Verzeichnises:
Code:
uses shlobj;
function TfrmMain.OpenFolder(root: Integer; Caption: string): string; //Verzeichnis-Öffnen-Dialog-Funktion var bi: TBrowseInfo; lpBuffer: PChar; pidlPrograms, pidlBrowse: PItemIDList; begin if (not SUCCEEDED(SHGetSpecialFolderLocation(GetActiveWindow, root, pidlPrograms))) then exit; lpBuffer := StrAlloc(MAX_PATH); bi.hwndOwner := GetActiveWindow; bi.pidlRoot := pidlPrograms; bi.pszDisplayName := lpBuffer; bi.lpszTitle := PChar(Caption); bi.ulFlags := BIF_RETURNONLYFSDIRS; bi.lpfn := nil; bi.lParam := 0; pidlBrowse := SHBrowseForFolder(bi); if (pidlBrowse <> nil) then if SHGetPathFromIDList(pidlBrowse, lpBuffer) then Result := lpBuffer; StrDispose(lpBuffer); end; procedure TfrmMain.cmdOpenClick(Sender: TObject); begin txtPath.Caption := OpenFolder(CSIDL_DRIVES, 'Verzeichnis wählen'); //Übergabe des gewählten Verzeichnisses end; |
@Luckie: cool, Danke!!!
Jonson |
Moin Luckie,
Zitat:
SHBrowseForFolder, oder SelectDirectory erscheinen mir allerdings prinzipiell sinnvoller. |
@Christian: Danke
Jonson |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:36 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