Frame — (фрейм) контейнер для других компонентов
Фрейм (рамка, frame) представляет собой контейнер для других компонентов, который на этапе разработки создается так же, как форма, но, в отличие от нее, может быть размещен в другом контейнере, например, в форме или панели. Для работы с фреймами в Delphi служит компонент Frame.
Работа с фреймом состоит из двух этапов:
- Создание и конструирование фрейма.
- Размещение созданного фрейма в нужном месте формы или панели.
Создание фрейма выполняется командой File ? New ? Frame (Файл ? Новый ? Фрейм), в результате которой в состав проекта включается новый фрейм. Фрейм имеет много общего с формой. Так, для каждого фрейма создаются файлы формы и модуля, а вид фрейма на этапе разработки не отличается от вида формы. Конструирование фрейма, как и конструирование формы, заключается в размещении в нем нужных компонентов и в кодировании обработчиков событий. На скриншоте показан фрейм, в котором после его добавления к проекту размещены группа переключателей и кнопка.
Для размещения фрейма в форме следует выбрать в Палитре компонентов компонент Frame и поместить его в нужное место формы. При отпускании компонента появляется диалоговое окно Select frame to insert (Выберите фрейм для вставки), в котором выбирается имя фрейма. После нажатия кнопки ОК выбранный фрейм вставляется в указанное место. При этом несколько изменяется вид фрейма: у него пропадают рамка и заголовок, присущие форме. Однако размещенные в нем компоненты (т. е. содержимое фрейма) выглядят так же, как при разработке.
Если в проекте нет ни одного фрейма, то при попытке размещения компонента Frame в форме выдается сообщение об ошибке.
После размещения фрейма в форме в ее раздел uses автоматически включается ссылка на модуль фрейма, а в описание класса формы добавляются ссылки на обработчики событий фрейма и его компонентов.
В случае частого использования какого-либо фрейма его можно разместить в Палитре компонентов. Для этого после создания фрейма следует выделить его и выполнить команду Create Component Template (Создать шаблон компонента) меню Component (Компонент), что вызовет появление диалогового окна Component Template Information (Информация о шаблоне компонента).
После нажатия кнопки ОК фрейм размещается на странице, выбранной в списке Palette page (Страница Палитры), под именем, заданным в поле Component name (Имя компонента), и со значком, отображаемым в области Palette Icon (Значок палитры). Чтобы сменить значок, нажмите кнопку Change (Изменить) и в открывшемся диалоговом окне выберите графический файл с расширением bmp. После размещения в Палитре компонентов с фреймом можно работать, как с любым другим стандартным компонентом, например, панелью или группой.
Можно добавить фрейм и в Хранилище объектов, вызвав командой Add То Repository (Добавить к Хранилищу объектов) контекстного меню фрейма одноименное диалоговое окно.
Перед добавлением фрейма необходимо указать данные в следующих полях:
- список Forms (имя добавляемого фрейма);
- поле Title (название фрейма в Хранилище объектов);
- поле Description (описание фрейма);
- список Page (страница, на которой должен быть размещен фрейм);
- поле Author (информация о разработчике фрейма).
Чтобы сменить значок фрейма, назначаемый по умолчанию, нажмите кнопку Browse (Просмотреть) и выберите в открывшемся диалоговом окне файл с расширением ico. После нажатия кнопки ОК фрейм добавляется в Хранилище объектов.
Аналогичным образом в Хранилище объектов добавляется форма.