§ 6. Праектаванне інтэрфейса аконнага дадатку з выкарыстаннем элементаў кіравання

6.6. Элемент кіравання ScrollBar (паласа пракруткі)

ScrollBar (паласа пракруткі) — кампанент у выглядзе паўзунка, які ўяўляе сабой гарызантальную або вертыкальную паласу пракруткі. На панэлі кампанентаў Standard паласа пракруткі намаляваная ў выглядзе , імя аб'екта — ScrollBar.

Кампанент ScrollBar, змешчаны на форму, атрымлівае імя ScrollBarN, дзе N — нумар 1, 2, 3… (прыклад 6.18).

Некаторыя ўласцівасці кампанента ScrollBar прыведзены ў табліцы (прыклад 6.19).

Прыклад 6.20. Стварыць праект «Цветовая модель RGB». Стварыць форму па ўзоры, размясціўшы на ёй кампаненты Panel, ScrollBar, BitBtn. Колеры панэлей змяняюцца ў залежнасці ад значэнняў, вызначаных становішчам бегунка на адпаведнай паласе пракруткі.

Этапы выканання задання

  1. Змясціць на форму чатыры панэлі (кампанент Panel) і тры паласы пракруткі. Кампанент Panel з'яўляецца кампанентам-кантэйнерам. На ім можна размяшчаць іншыя кампаненты. Валодае ўласцівасцю Color.
  2. Устанавiць для кампанентаў ScrollBar наступныя ўласцівасці: Kind — SbVertical, Max — 255, Position — 255.
  3. Зафарбаваць панэлі чырвоным, зялёным, сінім і белым колерамі адпаведна. Тры панэлі павінны змяняць колер толькі па складальніках RGB: чырвоны, зялёны і сіні, а чацвёртая панэль афарбоўваецца ў колер, які атрымліваецца з трох складальнікаў.
  4. Напісаць апрацоўшчыкі падзей OnChange для кожнай паласы пракруткі. Пры змене становішча бегунка паласы пракруткі павінен змяніцца колер двух панэляў: складальнікам аднаго з колераў і панэлі з колерам RGB.
  5. Для задання колеру можна выкарыстоўваць функцыю RGB. Гэтая функцыя залежыць ад трох параметраў — лікавых значэнняў, якія складаюць колер у палітры RGB. Функцыя вяртае лікавае значэнне. Для выкарыстання гэтага ліку ў якасці колеру, яго трэба пераўтварыць да тыпу TColor.

Прыклад 6.18. Кампаненты ScrollBar (паласа пракруткі) на форме:

Прыклад 6.19. Уласцівасці кампанента ScrollBar:

Уласцівасці

Прызначэнне

Position

Вызначае месца становішча бегунка, якое можа змяняцца ў межах значэнняў, якія задаюцца ўласцівасцямі Min і Мах

Max

Максімальнае значэнне для паласы пракруткі

Min

Мінімальнае значэнне для паласы пракруткі

Kind

Тып паласы пракруткі: sbHorizontal — гарызантальная, sbVertical — вертыкальная

SmallChange

Вызначаюць памер зруху пры кліку на кнопкі ў канцы і пачатку паласы пракруткі або націскам клавішы са стрэлкай

Прыклад 6.20. Форма на этапе канструявання:

Апрацоўшчык падзеі OnChange для ScrollBar1.

void __fastcall TForm1::ScrollBar1Change
                (TObject *Sender)

{

  Panel1 -> Color = (TColor)

    RGB(ScrollBar1 -> Position, 00);

  Panel4 -> Color = (TColor)

    RGB(ScrollBar1 -> Position,

        ScrollBar2 -> Position,

        ScrollBar3 -> Position);

}

Дадатак у час работы: