Объявление

Описание

type TTabChangingEvent = procedure (Sender: TObject;
var AllowChange: Boolean) of object;
property OnChanging: TTabCnangingEvent;

Вызывается непосредственно перед открытием новой страницы. Параметр AllowChange, установленный в значение False, запрещает открытие

Таблица 5.2 (окончание)

Объявление

Описание

property OnChange: TNotifyEvent;

Вызывается при открытии новой

страницы

property OnDrawTab: TDrawTabEvent;

Вызывается при перерисовке

страницы, только если свойство

OwnerDraw = True

property OnGetlmagelndex:

Вызывается при отображении

TTabGetImageEvent;

на закладке картинки

Как видно из таблицы, большинство свойств обеспечивают различные стили представления многостраничного блокнота. При настройке стиля обратите внимание, что свойство RaggedRight может не работать, т. к. вступает в противоречие со свойством Tabwidth. При TabWldth = о компонент изменяет ширину закладок в соответствии с длиной текста, в противном случае ширина закладок всегда равна значению свойства Tabwidth.

Для того чтобы в закладках совместно с текстом показать картинки, используется свойство images, в котором необходимо задать требуемый экземпляр КОМПОНеНТа TImageList (Ъи. Ниже).

Свойство Tabindex, задающее номер текущей страницы, позволяет переключать страницы программно. Для компонента TTabControi это единственный способ изменить текущую страницу на этапе разработки. При смене страниц сначала происходит событие OnChanging - в этот момент Tabindex еще содержит индекс старой страницы (и смену можно запретить), а затем OnChange - это свойство уже указывает на новую страницу.

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

property Tabs: TStrrngs;

В списке перечисляются заголовки страниц, для которых автоматически создаются закладки. Порядок следования страниц зависит от расположения текстов заголовков в свойстве Tabs.

При этом забота о правильном чередовании элементов управления при смене страниц полностью ложится на программиста. Для этого необходимо в методе-обработчике OnChange определить видимость элементов в зависимости от индекса текущей страницы:

procedure TForml .TabControllChange (Sender: TObject) ;

begin with TabControll do

begin
Editl.Visible := Tablndex = 0;
Edit2.Visible := Tablndex = 1;
Edit3.Visible := Tablndex = 2 ;
end;
end;

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

property Pages[Index: Integer]: TTabSheet;

Номер индекса соответствует порядковому номеру страницы. Для создания новой страницы используется команда New Page из всплывающего меню компонента, перенесенного на форму. Если же вы хотите создать страницу на этапе выполнения, создайте экземпляр TTabsheet самостоятельно и в свойстве PageControl укажите на родительский блокнот:

pcMain: TPageControi;
ts : TTabSheet;
ts := TTabSheet.Create(pcMain);

⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в Delphi 7



Новости за месяц

  • Декабрь
    2017
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс