Студопедия

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

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

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






Компонент PageControl






Многостраничные панели позволяют экономить пространство окна приложения, размещая на одном и том же месте страницы разного содержания.
Компонент PageControl находится на Палитре Компонентов на странице Win32.

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

Каждая создаваемая вами страница является объектом типа TTabSheet. Это панель, на которой можно размещать любые управляющие компоненты, окна редактирования и т.п. После того, как вы создадите несколько страниц, выделите одну из них, щелкнув ее в середине, и посмотрите ее свойства в Инспекторе Объектов. Страница имеет следующие основные свойства:

Значение Описание
Name Имя, по которому можно ссылаться на страницу.
Caption Надпись, которая появляется на ярлычке закладки.
Pagelndex Определяет номер (индекс) данной страницы в компоненте PageControl. Первая страница имеет индекс 0. При удалении или переме-щении страниц значения PageIndex автома-тически изменяются, образуя непрерывную последовательность номеров.
Imagelndex Индекс изображения, которое может появляться на ярлычке закладки.
Style Определяет стиль отображения компонента: tsTabs - закладки, tsButtons - кнопки, tsFlatButtons - плоские кнопки.
HotTrack Если свойство принимает значение True, названия страниц выделяются другим цветом при перемещении над ним указателя мыши.
MultiLine Определяет, будут ли закладки размещаться в несколько рядов, если все они не помещаются в один ряд.
TabPosition Определяет место расположения ярлычков закладок: tpBottom - внизу, tpLeft - слева, tpRight - справа и tpTop - вверху компонента (это значение по умолчанию).
TabHeight, TabWidth Высота и ширина ярлычков закладок в пикселах. Если значения этих параметров заданы равными 0, то размеры ярлычков опеделяются автоматически по размерам надписей на них.
RaggedRight Изменяет ширину закладок таким образом, чтобы они занимали всю сторо-ну блокнота.
Images Ссылка на компонент ImageList, который содержит список изображений на ярлычках. Свойства Imagelndex страниц содержат индексы, соответствующие именно этому списку.
ScrollOpposite Определят способ перемещения закладок при размещении их в несколько рядов.
ActivePage Имя активной страницы.
Pages [int Index] Доступ к странице по индексу (первая страница имеет индекс 0). Свойство только для чтения.
PageCount Количество страниц. Свойство только для чтения.
TabVisible При значении равном False данная страница в блокноте становится невидимой.

В компоненте имеется ряд методов, позволяющих оперировать страницами, создавать их, уничтожать, переключать. Основные события компонента OnChanging и OnChange. Первое из них происходит непосредственно перед переключением на другую страницу после щелчка пользователя на новой закладке. При этом в обработчике события передается по ссылке параметр AllowChange - разрешение переключения. Если в обработчике задать AllowChange = false, то переключение не произойдет. Событие OnChange присходит сразу после переключения.

Для сокрытия закладки в компоненте TPageControl воспользуйтесь следующим кодом:

PageControl1-> Pages[1]-> TabVisible = false;

где PageControl1 - ваш компонент TPageControl, расположенный на форме. Данный код скрывает закладку с индексом 1. Для сокрытия другой закладки вместо единицы должен стоять соответствующий индекс.

Код для проверки номера активной вкладки.

void __fastcall TForm1:: PageControl1Change(TObject *Sender)

{

switch (PageControl1-> ActivePageIndex) {

case 0:

ShowMessage(" It's the first page.");

break;

case 1: …

 

Количество вкладок:

PageControl1-> PageCount

Перебрать все вкладки:

for (int i = 0; i < PageControl1-> PageCount; i++) {

PageControl1-> Pages[i]-> // действия, которые нужны вам...

}

 






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