Компонент Delphi OpenDialog располагается на странице Dialogs Палитры компонентов.
С помощью данного компонента мы можем выбрать файл для его открытия. Запуская данный диалог мы увидим окно (см рис.), в котором происходит выбор открываемого файла.
Основной метод, используемый для открытия файла, эта функция:
function Execute: Boolean;
Она позволяет определить, как закрыт диалог, при помощи возвращаемого логического значения. Если была нажата кнопка Open, то диалог считается принятым, и возвращаемое значение функции Execute равно True. Иначе, закрывая диалог любым другим способом, функция возвращает значение False и диалог считается не принятым.
К основным свойствам данного компонента относятся:
- Title (тип String) - устанавливает заголовок окна. По умолчанию свойство Title не установлено и на экране мы увидим заголовок - Open.
- FileName (тип String) - является именем файла включая его полный путь. Наименование открываемого файла будет отображано в строке Имя файла.
- InitialDir (тип String) - задает каталог, содержимое которого будет отображено в диалоговом окне. Если данное свойство не задано, то мы увидим содержимое текущего каталога.
- Filter (тип String) - устанавливает маски имен файлов, которые будут отображаться в списке Тип файлов. В диалоговом окне будут отображаться все файлы удовлетворяющие условию фильтрации. По умолчанию данный параметр не задан (пустая строка) и поэтому будут отображены все файлы.
- DefaultExt (тип String) - расширение по умолчанию. Автоматически подставляется если пользователь не указал расширение.
- FilterIndex (тип Integer) - задает маску фильтра которая будет показана при открытии диалога. По умолчанию 1, т.е. будет отображена первая маска.
Для закрепления материала создадим приложение. Расположим на форме метку, кнопку и диалог открытия, примерно как показано на рисунке. Фильтр сделаем по образцу верхнего рисунка.
Для кнопки создадим следующий обработчик события -
if OpenDialog1.Execute then Label1.Caption:=OpenDialog1.FileName;
Запустив приложение и выбрав файл мы будем видеть его полное имя на месте метки.
Итог: мы познакомились с компонентом OpenDialog его свойствами и принципами его работы.