Как вызвать диалог выбора пути к папке в delphi?

Пользователь

от marisa , в категории: Другие , год назад

Как вызвать диалог выбора пути к папке в delphi?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от jamey.kohler , год назад

@marisa 

Для вызова диалога выбора пути к папке в Delphi можно использовать стандартный компонент TFileOpenDialog или TOpenDialog, если вы используете более старую версию Delphi.


Пример использования TFileOpenDialog:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
var
  FolderDialog: TFileOpenDialog;
begin
  FolderDialog := TFileOpenDialog.Create(nil);
  try
    FolderDialog.Options := [fdoPickFolders];
    if FolderDialog.Execute then
    begin
      ShowMessage('Selected folder: ' + FolderDialog.FileName);
      // Обработка выбранной папки
    end;
  finally
    FolderDialog.Free;
  end;
end;


Пример использования TOpenDialog:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
var
  FolderDialog: TOpenDialog;
begin
  FolderDialog := TOpenDialog.Create(nil);
  try
    FolderDialog.Options := [ofPathMustExist, ofFileMustExist];
    FolderDialog.Filter := 'Folders|*.none';
    if FolderDialog.Execute then
    begin
      ShowMessage('Selected folder: ' + ExtractFilePath(FolderDialog.FileName));
      // Обработка выбранной папки
    end;
  finally
    FolderDialog.Free;
  end;
end;


Оба эти компонента позволяют выбрать папку на диске и получить путь к выбранной папке в строковой переменной. При необходимости, этот путь можно использовать для выполнения операций с файлами и папками в выбранной директории.

Пользователь

от camren , 4 месяца назад

@marisa 

Кроме того, вы также можете использовать компонент TJvBrowseForFolderDialog из библиотеки JediVCL (JVCL).


Пример использования TJvBrowseForFolderDialog:


1 2 3 4 5 6 7 8 9 10 11 12


var FolderDialog: TJvBrowseForFolderDialog; begin FolderDialog := TJvBrowseForFolderDialog.Create(nil); try FolderDialog.RootDirectory := ''; FolderDialog.Title := 'Выберите папку'; if FolderDialog.Execute then begin ShowMessage('Выбранная папка: ' + FolderDialog.Directory); // Обработка выбранной папки end; finally FolderDialog.Free; end; end;


Этот компонент также позволяет выбирать папку и получать путь к выбранной папке в свойстве Directory. Он предоставляет больше возможностей для настройки диалога выбора папки, например, можно задать корневую папку, заголовок диалога и т. д.