Компонент TScrollBar

Delphi site: daily Delphi-news, documentation, articles, review, interview, computer humor.

TScrollBar (Смуга прокручування) зазвичай використовується як допоміжний інструмент в інших елементах керування: списках, текстових областях і т.д. Однак його можна ефективно застосовувати і як самостійні елементи управління, наприклад для приблизної, грубої налаштування значень за допомогою повзунка. Використовуючи смугу прокручування, користувач може швидко перемішатися за довгим списком або великим малюнком, який не вміщується на екрані. Смугу прокручування іноді використовують також для індикації або введення будь-якої величини. Крім того, смугу прокручування можна застосовувати для аналогового представлення позиції будь-якого елемента.

Властивості смуги прокручування Min та Мах визначають діапазон значень. Властивість Position містить поточну позицію повзунка смуги прокручування в діапазоні від Min до Мах. Визначити значення властивостей Min, Мах та Position можна за допомогою методу SetParams:

procedure SetParams(APosition, AMin, AMax: Integer);.

Властивість LargeChange визначає величину зміни кроку властивості Position, коли користувач клацає на смузі прокручування або натискає клавіші

. Аналогічно цьому властивість SmallChange визначає зміну кроку властивості Position, коли користувач клацає на стрілці на одному з кінців смуги прокручування або натискає клавіші зі стрілками вліво/вправо. При переміщенні повзунка значення властивості Position змінюється автоматично. Однак таку зміну можна виконати і програмно – тоді повзунок сам переміститься у потрібну позицію. При зміні значення властивості Position завжди генерується подія OnChange.

Властивість Kind задає орієнтацію смуги прокручування - горизонтальна (за замовчуванням) абовертикальна. Код обробника події OnScroll визначає поведінку елемента управління, коли користувач пересуває бігунок смуги прокручування.

Наведений нижче код ілюструє використання смуги прокручування. Відображення відповідного вікна показано на рис. 7.13.

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, System.ComponentModel, Borland.Vcl.StdCtrIs? type

TForml - class (TForrrt)

procedure FormCreate(Sender: TObject); private

ScrollBarl.Max := Forml.Height - 100; end; end.

tscrollbar

Мал. 7.13. Переміщення мітки у формі

Зверніть увагу, що початкові значення задаються для обробки події OnCreate (При створенні) для форми.

У цьому прикладі не дуже успішно виставлені межі зміни смуг прокручування. Вправляйтеся з установкою цих значень.