Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Стандартные диалоги и их фрагменты






Компонент Описание
OpenDialog«Открыть файл» Предназначен для создания окна диалога «Открыть файл».
SaveDialog«Сохранить файл» Предназначен для создания окна диалога «Сохранить файл как».
OpenPictureDialog«Открыть рисунок» Предназначен для создания окна диалога «Открыть рисунок», открывающего графический файл.
SavePictureDialog«Сохранить рисунок» Предназначен для создания окна диалога «Сохранить рисунок» — сохранение изображения в графическом файле.
FontDialog«Шрифты» Предназначен для создания окна диалога «Шрифты» — выбор атрибутов шрифта.
ColorDialog«Цвет» Предназначен для создания окна диалога «Цвет» — выбор цвета.
PrintDialog«Печать» Предназначен для создания окна диалога «Печать».
PrinterSetupDialog«Установка принтера» Предназначен для создания окна диалога «Установка принтера».
FindDialog«Найти» Предназначен для создания окна диалога «Найти» — контекстный поиск в тексте.
ReplaceDialog«Заменить» Предназначен для создания окна диалога «Заменить» — контекстная замена фрагментов текста.

Windows располагает целым набором стандартных диалогов, которые могут использоваться любым приложением. В распоряжение программиста среда предоставляет компоненты, соответствующие этим диалогам; найти их можно на вкладке Dialogs. Эти компоненты относятся к невизуальным.

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

На вкладке Dialogs всего восемь компонентов: шесть из них модальные, а два – FindDialog и ReplaceDialog – нет. Метод Execute() для этих диалогов создает окно и сразу же возвращает управление программе. Окно продолжает существовать, пока его не закроет пользователь. При необходимости произвести поиск или замену в тексте, вызываются обработчики событий данных компонентов.

Для обеспечения возможности использования в приложении стандартных диалогов Windows открытия и сохранения файлов нужно поместить в форму компоненты OpenDialog и SaveDialog (страница Dialogs палитры компонентов). Основными свойствами классов TOpenDialog и TSaveDialog являются:

Filter - список названий и масок шаблонов для выводимого списка файлов текущего каталога, например: Все файлы (*.*)|*.*),

Options - параметры настройки стандартного диалога:

1) ofHideReadOnly – скрыть выключатель «только чтение»,

2) ofOverwritePrompt – выдать запрос на подтверждение попытки перезаписать существующий файл,

3) ofPathMustExist и ofFileMustExist – выдать сообщение об ошибке при попытке ввести имя несуществующего каталога или файла,

4) ofNoReadOnlyReturn – выдать сообщение об ошибке при попытке сохранить файл на защищенном от записи устройстве,

5) и др.

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

Для модального выполнения стандартного диалога в классе TCommonDialog предназначен метод

bool Execute(); /* возвращает значение true, если пользователь ввел имя файла, и false, если он отказался от ввода */

Метода нужно поместить в обработчике события onclick соответствующей команды меню (например, «Открыть» или «Сохранить как»). Глобальная функция

AnsiString ExtractFileName(AnsiString);

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

Пример использования:

if (OpenPictureDialog1-> Execute())
{
Image1-> Picture-> LoadFromFile(OpenPictureDialog1-> FileName);
}


Пример использования:

if (SavePictureDialog1-> Execute())
{
Image1-> Picture-> SaveToFile(SavePictureDialog1-> FileName);
}

Пример использования:

if(OpenDialog1-> Execute())
{
Memo1-> Lines-> LoadFromFile(OpenDialog1-> FileName);
}

Пример использования:

if(SaveDialog1-> Execute())
{
Memo1-> Lines-> SaveToFile(OpenDialog1-> FileName);
}

Основной метод, которым производится обращение к любому диалогу, — Execute. Эта функция открывает диалоговое окно и, если пользователь произвел в нем какой-то выбор, то функция возвращает true. При этом в свойствах компонента-диалога запоминается выбор пользователя, который можно прочитать и использовать в дальнейших операциях. Если же пользователь в диалоге нажал кнопку Отмена или клавишу Esc, то функция Execute возвращает false.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.