![]() |
Pfadangabe ins Edit
habe 2 EditFelder und 2 "Durchsuchen.."-Button
beim ersten Button soll ich eine Datei auswählen können deren kompletter pfad anschließend im ersten Edit Feld steht Bsp: C:\Programme\xXx\start.exe beim zweiten soll nur ein ordener ausgefählt werden können dessen pfad ebenfalls dann im zweiten edit steht Bsp: D:\Neu\Ordner1\ welche komponenten brauch ich dazu und wie muss der SourceCode ungefähr aussehen ??? |
Re: Pfadangabe ins Edit
Zu 1:
Delphi-Quellcode:
if OpenDialog1.Execute then
Edit1.Text:=OpenDialog1.FileName; |
Re: Pfadangabe ins Edit
beim ersten brauchst du einen einfachen OpenDialog (bei "Dialoge" zu finden).
Delphi-Quellcode:
für das zweite empfehle ich die Funktion:
if OpenDialog1.Execute then
edit1.text := OpenDialog1.FileName;
Delphi-Quellcode:
Aufruf dann:
uses ShellAPI, ShlObj;
// ... function 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;
Delphi-Quellcode:
Um sicherzustellen, dass Edit2 nur Pfade enthält, könntest du die spätere mit Ausgabe mit ExtractFilePath bearbeiten oder das Edit2 Read-Only machen, und Eingaben nur mittels Dialog ermöglichen.
edit2.text := OpenFolder(CSIDL_DRIVES, 'Ordner öffnen');
mfG mirage228 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 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