- •(6 Год.)
- •II. TPageControl - набір сторінок із закладками
- •III. TImageList - сховище зображень
- •IV. TTrackBar - регулятор розміру
- •V. TProgressBar - індикатор прогресу
- •VI. TUpDown - спарена кнопка
- •VII.THotKey - введення акселератора
- •VIII.TDateTimePicker - введення і відображення дати/часу
- •IX.TMonthCalendar - календар
- •X.TStatusBar - інформаційна панель
- •XI.TToolBar і ToolButton - інструментальна панель і кнопки для неї.
Лекція №6
(6 Год.)
ТЕМА: Сторінка Win32.
TTabControl
TPageControl
TImageList
TTrackBar
TProgressBar
TUpDown
THotKey
TDateTimePicker
TMonthCalendar
TStatusBar
TToolBar і ToolButton
Сторінка Win32 містить інтерфейсні елементи для 32 розрядних операційних систем Windows 95/98/NT/2000.
І. TTabControl.
Компонент TTabControl являє собою контейнер із закладками. Властивість Tabs визначає назви і кількість закладок. Подія onChange виникає при виборі нової закладки і дозволяє керувати вмістом вікна компонента.
Властивості компонента:
property DisplayRect:TRect; Визначає робочу зону компонента, призначену для розміщення інших компонентів. Клієнтська частина компонента містить зону закладок і робочої зони.
property HotTrack:Boolean; Якщо містить True, назва закладки автоматично виділяється кольором при переміщенні над нею покажчика миші.
property Images: TCustomimageList; Визначає об'єкт - сховище зображень, що будуть промальовуватися зліва від тексту.
property MultiLine: Boolean; Дозволяє розташування закладок у декілька рядів. Якщо містить False і закладки не вміщаються в межах компонента, у зону закладок автоматично вставляються кнопки прокручування.
property OwnerDraw: Boolean; Дозволяє програмне промальовування закладок.
property ScrollOpposite: Boolean; Дозволяє/ забороняє переміщення неактивних рядів закладок на протилежну сторону компонента. Враховується, якщо кількість рядів більше 2.
type TTabStyle = (tsTabs, tsButtons, tsFlatButtons);
property Style: TTabStyle;
Визначає стиль закладок: tsTabs - звичайні написи; tsButtons - тривимірні кнопки; tsFlatButtons - плоскі кнопки.
property TabHeight: Smallint; Визначає висоту кожної закладки в пікселях. Якщо містить 0, висота закладок вибирається автоматично в залежності від обраного шрифту.
property TabIndex: Integer; Визначає індекс обраної закладки або містить -1, якщо жодна закладка не обрана. Індексація починається з 0.
TTabPosition = (tpTop, tpBottom);
property TabPosition: TTabPosition
Визначає положення зони закладок щодо робочої зони компонента (tpTop - вгорі, tpBottom - насподі)
property Tabs: TStrings; Визначає написи на закладках і їхню кількість. Щоб додати або видалити закладку, потрібно додати її напис до списку Tabs або видалити напис із списку.
property TabWidth: Smallint; Визначає ширину кожної закладки в пікселях. Якщо містить 0, ширина кожної закладки вибирається індивідуально в залежності від довжини її напису.
Крім події OnChange, що виникає після вибору нової закладки, для компонента визначена також подія OnChanging, що виникає перед зміною закладки:
II. TPageControl - набір сторінок із закладками
Компонент TPageControl на відміну від TTabControi може містити декілька перекриваючих один одного панелей класу TTаbSheet. Кожна панель вибирається пов'язаною з нею закладкою і може містити свій набір поміщених на неї компонентів.
Щоб на етапі конструювання додати нову панель або вибрати раніше вставлену, клацніть по компоненті правою кнопкою миші і виберіть New Page (нова панель), Next page (наступна панель) або previous Page (попередня панель). Зміна панелей йде циклічно, тобто після показу останньої показується перша і навпаки.
Крім властивостей HotTrack, MultiLine, ScrollOpposite, TabHeight, TabPosition і Tabwidtn, що аналогічні однойменним властивостям TTabControl, компонент має наступні специфічні властивості:
property ActivePage: TTabSheet; Містить посилання на активну панель. Установка нового значення ActivePage розміщає відповідну панель поверх інших. Для вибору нової панелі варто використовувати методи selectNextPage і FindNextPage.
property ActivePageIndex: Integer; Містить індекс активної панелі.
property PageCount: Integer; Містить кількість панелей (тільки для читання).
property Pages [Index: Integer]: TTabSheet; Повертає посилання на панель по її індексу (тільки для читання).
Методи компонента:
function FindNextPage (CurPage: TTabSheet; GoForward, CheckTabVisible: Boolean) : TTabSheet;
Шукає наступну панель: Curpage - поточна панель; GoForward-містить True, якщо пошук йде від першої панелі до останньої; CheckTabVisible - містить True, якщо з пошуку виключаються панелі c ознакою TabVisible=False. Повертає посилання на знайдену панель. Якщо Curpage не належить компоненту, повертає посилання на першу або останню панель у залежності від параметра GoForward.
procedure SelectNextPage (GoForward: Boolean); Робить активною наступну панель. Якщо GoForward=True, активізується наступна панель, у противному випадку - попередня.