Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы и ответы к письм. мод. по Делфи.doc
Скачиваний:
4
Добавлен:
18.07.2019
Размер:
271.36 Кб
Скачать

Расскажите о возможностях элементов управления — кнопок

Ответ: Кнопки представлены в стандартных компонентах тремя классами —

Button, BitBtn и SpeedButton.

Компоненты Button и BitButton реализованы в виде оболочек Windows-

элементов управления, причем класс TBitBtn является наследником

TButton и добавляет к возможностям родительского класса вывод изобра-

жений на поверхность кнопок и автоматическую установку стиля компонента

на основе некоторого набора сочетаний изображений и подписей. Данные

компоненты поддерживают также возможность автоматического разбиения

подписей на слова и вывод их в несколько строк.

Компонент SpeedButton является легковесным компонентом, реализованным

исключительно средствами Delphi. Из возможностей компонентов Button и

TBitBtn, отсутствующих в SpeedButton, можно отметить только разбие-

ние длинных подписей. Компоненты SpeedButton могут организовывать меж-

ду собой группы, аналогичные группам зависимых переключателей.

Приведите правила создания компонентов во время выполнения программы

Ответ: Для создания компонента во время выполнения программы следу-

ет выполнить такие действия:

» создать экземпляр компонента с помощью вызова конструктора create,

передав, при необходимости, в качестве параметра ссылку на компо-

нент, который будет нести ответственность за разрушение создаваемого

компонента. Если компонент будет разрушен в тексте программы, то

ссылку можно не передавать, использовав значение nil;

» для визуальных компонентов установить свойство визуальной принадлеж-

ности Parent, присвоив ему ссылку на контейнер, в котором отобража-

ется создаваемый компонент;

« для визуальных компонентов установить свойства, определяющие поло-

жение, размеры и другие необходимые визуальные характеристики эле-

мента управления;

» при необходимости реализовать в виде методов какого-либо класса и

назначить компоненту обработчики событий;

• если при создании компонента не был указан владелец Owner, разру-

шить компонент, вызвав его метод Free. Если компонент имеет владель-

ца, то он будет разрушен автоматически.

Поясните понятие диалогового компонента

Ответ: Диалоговые компоненты — это невизуальные компоненты, которые

могут во время выполнения программы отображать на экране диалоговые

окна для получения от пользователя какой-либо информации.

Все диалоговые компоненты наследуются от класса TCommonDialog, в

котором описан метод Execute, предназначенный для вывода диалогово-

го окна на экран. Метод реализован в виде функции, возвращающей логи-

ческое значение, используемое некоторыми модальными диалогами для ин-

дикации необходимости использования информации по результатам работы

пользователя. Например, метод Execute файлового диалога OpenDialog

возвращает значение True, если пользователь выбрал какой-либо файл и

нажал на кнопку Ok.

Поясните разницу между модальными и немодальными диалогами

Ответ: С точки зрения пользователя, модальные диалоги запрещают пе-

реход к любому окну программы, из которой они вызваны, а немодальные

диалоги работают параллельно с программой..

С точки зрения разработчика, модальный диалог приостанавливает прило-

жение, которое вызвало этот диалог с помощью метода Execute, до зак-

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

модальный диалоговый компонент, обычно локализован в одной подпрог-

рамме и выглядит в виде последовательности действий:

» отображение диалогового окна с помощью метода Execute;

» анализ значения функции Execute; ,

* анализ свойств диалогового компонента;

• действия, необходимые для реакции на информацию, введенную пользо-

вателем.

При вызове метода Execute немодального диалога, выполнение програм-

мы продолжается, поэтому реакция на действия пользователя основыва-

ется, в основном, на обработке событий, предусмотренных данным диа-

логовым компонентом.

Назовите основные методы и события, описанные в базовом диалоговом компоненте

Ответ: Базовым диалоговым компонентом является класс TCommonDialog,

в котором описан метод Execute, отображающий диалоговое окно, и два

события:

» OnShow, возникающее при выводе диалогового окна на экран;

* Ondose, возникающее при закрытии диалога

Все диалоговые компоненты поддерживают эти события.

Перечислите виды стандартных диалоговых компонентов

Ответ: В стандартной поставки Delphi 7 предусмотрены следующие диа-

логовые компоненты:

» Модальные диалоги для работы с файлами (открытие или сохранения).

В данную группу входят диалоги открытия и сохранения файлов

OpenDialog и SaveDialog, а также диалоги открытия и сохранения гра-

фических файлов OpenPictureDialog и SavePictureDialog.

» Модальные диалоги выбора шрифта и цвета FontDialog и ColorDialog.

» Модальные диалоги настройки параметров печати PrintDialog,

PrinterSetupDialog и PageSetupDialog.

» Немодальные диалоги текстового поиска и замены FindDialog и

ReplaceDialog.

Расскажите о методах настройки функциональностидиалоговых окон

Ответ: Во всех стандартных диалоговых компонентах предусмотрено мно-

жественное свойство Options,, тип которого отличается для разных ком-

понентов, поэтому данное свойство описано в каждом конкретном компо-

ненте, а не в базовом классе TCommonDialog.

Свойства Options представляют собой множества каких-либо элементов,

каждое из которых определяет одну настройку соответствующего диало-

гового окна. С помощью таких свойств можно:

1. Управлять наборами элементов управления, размещенными на диало-

говых окнах.

2. Определять состояние (введенную информацию) некоторых элементов

управления.

3. Включать или отключать контроль за действиями пользователя с целью

автоматической корректировки диалогом вводимых данных.

Дополнительные возможности настройки функциональности предусмотре-

ны в компоненте PageSetupDialog, позволяющем приложению прорисо-

вывать макет страницы, расположенный на нем, с помощью последователь-

ного вызова обработчиков соответствующих событий.