Компоненты вкладки Dialogs

В состав Windows входит ряд типовых диалоговых окон, таких как окно выбора загружаемого файла, выбора шрифта, настройки принтера и т.д. В Delphi реализованы классы, объекты которых дают программисту удобные способы создания и использования таких окон.

Работа со стандартными диалоговыми окнами осуществляется в три этапа.

Вначале на форму помещается соответствующий компонент и осуществляется настройка его свойств. Настройка свойств может проходить как на этапе конструирования, так и в ходе прогона программы. Как и для любых других компонентов, программист не должен заботиться о вызове конструктора и деструктора класса диалогового окна – эти вызовы реализуются автоматически в момент старта и завершения программы.

На втором этапе осуществляется вызов стандартного для классов диалоговых окон метода Execute, который создает и показывает на экране диалоговое окно. Вызов этого метода обычно располагается внутри обработчика какого-либо события. Например, обработчик выбора в меню команды Открыть файл может вызвать метод Execute компонента TOpenDialog, обработчик щелчка на кнопке Сохранить панели инструментов может вызвать такой же метод компонента TSaveDialog и т.д. Только после обращения к методу Execute дальнейшее выполнение программы приостанавливается до тех пор, пока пользователь не закроет окно.

Проанализировав результат вызова метода Execute, программа может выполнить третий этап – использовать введенные с помощью диалогового окна данные – имя файла, параметры принтера, выбранный шрифт и т.д.

Для компонентов OpenDialog – диалог «Открыть файл» и SaveDialog — диалог «Сохранить файл как» свойства одинаковы, только их смысл несколько различен для открытия и закрытия файлов. Основное свойство, в котором возвращается в виде строки выбранный пользователем файл, – FileName. Значение этого свойства можно задать и перед обращением к диалогу.

Свойство Title позволяет задать заголовок диалогового окна. Если это свойство не задано, окно открывается с заголовком, определенным в системе (например, «Открытие файла»). Но можно задать и свой заголовок, подсказывающий пользователю ожидаемые действия. Например, «Укажите имя открываемого файла».

Обработка команды Открыть может сводиться к следующему оператору:

if OpenDialog1.Execute then

begin

FName := OpenDialog1.FileName;

Memo1.Lines.LoadFromFile(FName);

end;

Обработка команды Сохранить как… выполняется операторами:

SaveDialog1.FileName := FName;

if SaveDialog1.Execute then

begin

FName := SaveDialog1.FileName;

Memo1.Lines.SaveToFile(FName);

end;

Добавить комментарий