Многостраничный блокнот — компоненты TTabControl и TPageControl 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Многостраничный блокнот — компоненты TTabControl и TPageControl



 

В Палитре компонентов имеется два элемента управления, обеспечивающих создание многостраничных блокнотов. Это компоненты TTabControl и TPageControl. Переключение между страницами осуществляется при помощи закладок. Закладки могут выглядеть как "настоящие" в бумажном блокноте, а могут быть похожи на стандартные кнопки Windows. Кстати, сама Палитра компонентов Delphi является примером использования такого элемента управления.

Компонент TTabControl отличается тем, что представляет собой как бы "виртуальный" блокнот. Это — единый объект с одной фактической страницей. При переключении закладок осуществляется вызов метода-обработчика события OnChange, соответствующий код в котором может изменить набор видимых элементов управления и создать для пользователя иллюзию "переключения страниц".

Компонент TFageControl состоит из отдельных страниц, которые можно переключать во время разработки.

Компонент TTabControl удобен, если на разных страницах у вас должны располагаться одни и те же компоненты, "начиненные" различными данными.

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

 

Таблица 6.1. Основные свойства, общие для TTabControl и TPageControl

 

Свойство Описание
Tablndex   Задает номер текущей страницы, начиная с 0
TabHeight Задает высоту закладок в пикселах. При значении 0 высота определяется автоматически так, чтобы вместить текст
TabWidth Задает ширину закладок. При значении 0 ширина определяется автоматически так, чтобы вместить текст
Style Определяет стиль закладок компонента: · tsTabs — стандартные закладки; · tsButtons — объемные кнопки; · tsFlatButtons — плоские кнопки
TabPosition Определяет расположение закладок на компоненте. Расположение, отличное от tpTop, возможно только для стиля tsTabs
HotTrack При значении True названия страниц выделяются цветом при перемещении над ними указателя мыши
Images Указывает на список картинок, появляющихся на закладках страниц
RaggedRight При значении True ширина закладок изменяется таким образом, чтобы они не занимали всю сторону блокнота
MultiLine При значении True закладки страниц могут располагаться в несколько рядов (если они не помещаются в один). При значении False в верхнем правом углу появляются кнопки, организующие прокрутку невидимых заголовков
ScrollOpposite При значении True, если закладки расположены в несколько рядов, при переходе к закладке следующего ряда все остальные ряды перемещаются на противоположную сторону блокнота. Действительно только при MultiLine=True

 

Свойство TabIndex, задающее номер текущей страницы, позволяет переключать страницы программно. Для компонента TTabControl это единственный способ изменить текущую страницу на этапе разработки.

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

Компонент TPageControl, в отличие от TTabControl, для обеспечения работы создает "настоящую" страницу. Список указателей на все созданные экземпляры страниц хранится в свойстве Pages, доступном только для чтения.

Номер индекса соответствует порядковому номеру страницы. Для создания новой страницы используется команда New Page из всплывающего меню компонента, перенесенного на форму.

Общее число страниц хранится в свойстве PageCount, доступном только для чтения. Текущую страницу можно задать свойством ActivePage.

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

Страница может временно "исчезнуть" из блокнота, а затем опять появиться. Для этого применяется свойство TabVisible.

 



Поделиться:


Последнее изменение этой страницы: 2017-01-19; просмотров: 138; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.217.208.72 (0.006 с.)