Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Algus0309.DOC
Скачиваний:
15
Добавлен:
31.03.2015
Размер:
629.76 Кб
Скачать
      1. Использование стандартных диалоговых окон

В Delphi имеется возможность использования в своих программах стандартных диалоговых окон. Внешне они похожи на диалоговые окна, используемые, например, в таких известных программных продуктах как Microsoft Word и Excel. Для создания диалогового окна необходимо включать в свою форму соответствующую компоненту из палитры Dialogs. Проиллюстрируем создание диалогового окна на примере окна Open. Чтобы мы могли проверять и показывать результаты работы диалогового окна, приведем сначала описание стандартной процедуры, позволяющей вывести на экран информационные сообщения (т.е. сообщения, не требующие ответа пользователя и предназначенные лишь “для сведения”). Этой цели служит процедура

ShowMessage (‘Строка’);

Рассмотрим сначала основные свойства объекта OpenDialog:

DefaultExt

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

FileName

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

Filter

Имеется редактор фильтров, позволяющий составить значения для этого свойства. Фильтры задаются в форме Имя – Расширение. Например, Pascal *.pas. При наличии фильтра из всего перечня файлов на экране будут показаны лишь файлы с заданным расширением.

InitialDir

Значением этого свойства является директория, файлы в которой будут показаны при открытии диалогового окна.

Name

Значением этого свойства является имя, по которому можно в программе ссылаться на это диалоговое окно. По умолчанию OpenDialog1 (для первого).

Создаем диалоговое окно, показанное на рис. 2.1. Для этого на форму перенесем компоненту OpenDialog и даем его свойствам следующие значения:

Рис. 2.1. Окно стандартного диалога

Filter: откроем диалоговое окно выбора фильтра и в открывающуюся таблицу запишем три строки:

Документ *.doc

Паскаль *.pas

Все файлы *.*

InitialDir: набираем значение D:\Mina

Примечание:если хотите на своей ПЭВМ создать подобную программу, то выбирайте существующие там значения директории и фильтров.

Для управления работой программы “испытания” диалогового окна дополним меню: в пункт File введем новый подпункт Dialog. Для этого активизируем проектировщик меню, активизируем подпункт Quit и нажмем на клавишу Insert, в результате появится место для нового подпункта Dialog. Его реализация:

procedure TForm1.Dialog1Click(Sender: TObject);

begin

If OpenDialog1.Execute then

Ffile1:=OpenDialog1.FileName;

end;

Ffile1 – глобальная переменная типа String, объявление которой необходимо записать в раздел переменных модуля, соответствующего главной форме (в нашем случае Mult1).

Для проверки результатов открытия файлов включим в меню Help подпункт Inspeсt Dialog со следующей реализацией:

procedure TForm1.InspectDialog1Click(Sender: TObject);

begin

if length(Ffile1)=0 then ShowMessage('No File')

else ShowMessage(Ffile1);

end;

Окно OpenDialog имеет две кнопки закрытия Open и Cancel. Если окно закрыто нажатием кнопки Open, то переменная OpenDialog1.Execute имеет значение True; если нажатием Cancel, то False. В первом случае свойство Filename получит выбранное значение, во втором – сохраняет прежнее (может быть пустое) значение. После выполнения диалога имя открытого файла имеется в переменной OpenDialog1.Filename и может использоваться в программе. В нашем примере имя файла сохранено и в переменной Ffile1.

В палитре Dialogs имеются и другие диалоги, например для закрытия файла. Их использование аналогично рассмотренному диалогу и поэтому на них останавливаться не будем.