Программирование: GetOpenFileName

Прототип

function GetOpenFileName(const Prompt: String; var FileName: String; const InitialDirectory, Filter, DefaultExtension: String): Boolean;

Описание

Выполняет вызов диалогового окна, в котором пользователь может выбрать существующий файл. Возвращает значение True, если пользователь подтвердил выбор файла, иначе — False. Имя выбранного файла передаётся параметру FileName.

С помощью параметра Promt можно указать пояснение для пользователя, которое будет показано в диалоге. Начальная папка для выбора файла устанавливается параметром InitialDirectory. Параметр Filter определяет фильтр файлов по типу, а параметром DefaultExtension указывается тип (расширение) файла по умолчанию.

Комментарии

Фильтр файлов устанавливается по следующему формату:

<название фильтра 1>|<маска файлов>|<название фильтра 2>|<маска файлов> и т.д...

Например, назначение фильтра 'Текстовые файлы (*.txt)|*.txt|Все файлы (*.*)|*.*' позволит отобразить в диалоге или только текстовые файлы, или же файлы любого типа.

Пример

var
  FileName: String;
begin
  // Устанавливаем начальное имя файла
  FileName := '';
  if GetOpenFileName('', FileName, '',
     'Текстовые файлы (*.txt)|*.txt|Все файлы|*.*', 'txt') then
  begin
    // Успех: пользователь нажал OK
    // Переменная FileName содержит выбранное имя файла
  end;
end;