Компонент Окно выбора файла (TOpenDialog)

 

Компонент предназначен для выбора файла с целью последующего открытия.

Свойства класса TOpenDialog:

 

Свойство Назначение
DefaultExt Расширение имени, используемое по умолчанию. Добавляется в конец выбранного пользователем имени файла, если расширение не указано явно
FileName Выбранное пользователем имя файла вместе с полным путем поиска
Files Список выбранных имен файлов. В свойстве Options должен быть включен флажок ofAllowMultiSelect
Filter Набор масок, в соответствии с которыми отбираются имена файлов для отображения в диалоговом окне. Каждая маска состоит из двух частей: названия и шаблона, – разделенных символом |. Одному названию могут соответствовать несколько шаблонов. Маски отделяются друг от друга символом |
FilterIndex Номер текущей маски. Нумерация начинается с 1
HistoryList Список ранее выбранных файлов (тип TStrings)
InitialDir Текущий каталог, содержимое которого отображается при первом открытии диалогового окна
Options Набор флажков, определяющих работу окна выбора файлов
Title Заголовок диалогового окна

 

Среди методов этого класса следует отметить функцию

 

functionGetStaticRect: TRect;

 

Она возвращает координаты прямоугольной области диалогового окна (часть клиентской области), зарезервированной для нужд разработчика (например для отображения содержимого текущего выбранного файла).

События класса TOpenDialog:

 

Событие Условие генерации
OnCanClose Пользователь пытается закрыть диалоговое окно. Обработчик этого события позволяет проконтролировать правильность выбранного или введенного в соответствующее поле окна имени файла и разрешить или запретить закрытие
OnFolderChange Пользователь переключился в другой каталог
OnIncludeItem К текущему списку файлов в диалоговом окне будет добавлено новое имя. Обработчик данного события дает возможность отбирать допустимые имена по алгоритму, определяемому программистом
OnSelectionChange Пользователь выбрал новое имя файла в диалоговом окне
OnTypeChange Пользователь выбрал новую маску файлов (свойство Filter)

 

В следующем примере при щелчке на кнопке отображается диалоговое окно выбора имени файла (объект OpenDialogl), которое имеет заголовок Выбор нужного файла, а в списке отображаются все файлы, имеющие расширение .PAS. Это обеспечивается присвоением свойству FilterIndex значения 2.

 

procedureTForml.ButtonlClick(Sender: TObject);