Функція SelectDirectory в Delphi виводить діалогове вікно, за допомогою якого користувач може вибрати директорію.
FileCtrl unit
- function SelectDirectory (const Caption : string; const StartDir : WideString; out ChosenDir : string) : Boolean;
- function SelectDirectory (var CurrDir : string; DialogOptions : TSelectDirOpts ; HelpContext : Longint) : Boolean;
Функція SelectDirectory виводить діалогове вікно, щоб дозволити користувачеві обрати директорію ChosenDirectory (диск + путь).
Варіант 1.
Показує діалог огляду (перегляду) Windows, ініціалізований заданою змінною StartDir. Текст Caption показується у верхній частині діалогу.
Якщо користувач натискає ОК,обрана директорія повертається до змінної ChosenDir, а значення, що повертається одно True.
Якщо користувач натисне кнопку Cancel, то нічого не буде виведено, а значення, що повертається, дорівнює False.
Варіант 2.
Виводить різні типи діалогу, які відображають файли у поточній вибраній директорії.
Значення CurrDir використовується для переміщення показу в задану директорію, і воно замінюється обраним значенням, якщо користувач натисне ОК.
Параметри DialogOptions и HelpContext виходять за межі цього опису. Вони можуть бути без побоювань встановлені за умовчанням, як у даному прикладі.
Функція SelectDirectory: Дозвольте користувачеві вибрати діалог, використовуючи першу версію
var
chosenDirectory : string;
begin
// Просимо користувача вибрати потрібний каталог, стартовий каталог C:
if SelectDirectory('Виберіть каталог', 'C:\', chosenDirectory)
then ShowMessage('Вибраний каталог = '+chosenDirectory)
else ShowMessage('Вибір каталогу перервався');
end;
Результат
{Діалог відобразить - користувач вибрав C:\Program Files і натиснув OK}
Вибраний каталог = C:\Program Files
Функція SelectDirectory: Дозвольте користувачеві вибирати діалог, використовуючи другу версію
var
options : TSelectDirOpts;
chosenDirectory : string;
begin
chosenDirectory := 'C:\'; // Встановлення початкового каталогу
// Просимо користувача вибрати, використовуючи повністю різні діалоги!
if SelectDirectory(chosenDirectory, options, 0)
then ShowMessage('Вибраний каталог = '+chosenDirectory)
else ShowMessage('Вибір каталогу перервався');
end;
Результат
{Діалог відобразить - користувач вибрав C:\Program Files і натиснув Cancel}
Вибір каталогу перервався
Схожі функції та команди
ChDir —вибір диска та директорії ( папки ), в якій проводитиметься робота.
CreateDir — створює директорію.
GetCurrentDir — повертає поточний каталог (диск плюс каталог).
GetDir — отримує поточний каталог (диск плюс шлях) для вказаного диска.
MkDir — створює каталог.
RemoveDir — дозволяє видалити директорію.
RmDir — видалення каталогу.
SetCurrentDir — змінює поточну директорію.
ForceDirectories — створює новий шлях каталогів.
