Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБ_ПОА_2005_Builder.doc
Скачиваний:
7
Добавлен:
03.05.2019
Размер:
1.26 Mб
Скачать

Ползунки и полосы прокрутки − компоненты TrackBar и ScrollBar

Компонент TrackBar представляет собой элемент управления в виде ползунка, который пользователь может перемещать курсором мыши или клавишами во время выполнения. Таким образом, пользователь может управлять какими-то процессами: громкостью звука, размером изображения и т.п.

Задание 4. Изучить ползунки и полосы прокрутки.

  1. Начните новый проект. В надпись формы внесите Ползунки, на форму перенесите четыре компонента TrackBar, три − по вертикали, друг под другом, четвертый − справа.

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

Свойство Position − целое, значение которого может изменяться в пределах, задаваемых свойствами Min и Max. По умолчанию Min = 0, Max = 10, так что Position может принимать только 11 значений − от 0 до 10. Если задать большее значение Max, соответственно увеличится количество возможных значений Position в диапазоне MinMax.

  1. Для верхнего ползунка задайте Max = 5.

  2. Свойство Orientation определяет ориентацию ползунка (по умолчанию − trHorizontal − горизонтальная). Для правого ползунка задайте trVertical − вертикальная.

  3. Свойства SelStart и SelEnd позволяют визуально выделить на шкале некоторый диапазон значений. Для среднего ползунка задайте соответственно 4 и 8.

  4. Свойство TickMarks указывает размещение шкалы относительно компонента. Для верхнего и правого задайте tmBottomRight − снизу или справа (в зависимости от ориентации ползунка), для нижнего − tmTopLeft − сверху или слева в зависимости от ориентации ползунка, для среднего − tmBothс обеих сторон.

  5. Выполните приложение. Убедитесь, что ползунки можно перемещать как мышью, так и клавишами.

Свойство TickStyle определяет способ изображения шкалы. Оно может принимать значения: tsAutoавтоматическая прорисовка шкалы, tsNoneотсутствие шкалы, tsManualпрограммное рисование шкалы с помощью метода SetTick(Value:Integer), который помещает метку шкалы в позицию, соответствующую величине Value. Метки, соответствующие началу и концу шкалы, автоматически размещаются в случае TickStyle = tsManual.

При TickStyle = tsAuto частота меток шкалы определяется свойством Frequency. Это свойство задает, сколько возможных значений Position лежит между метками. Например, если Frequency = 2, то метки будут соответствовать только каждому второму возможному значению позиции

  1. В верхнем ползунке установите Max =10, при TickStyle = tsAuto установите Frequency = 2. Выполните приложение. Убедитесь в новом варианте работы верхнего ползунка.

Компонент ScrollBar (полоса или линейка прокрутки) по своим функциям похож на ползунок. Основные свойства ScrollBarPosition, Min и Max те же, что у TrackBar. Свойство Kind, определяющее горизонтальное или вертикальное расположение полосы и принимающее соответственно значения sbHorizontal или sbVertical, аналогично свойству Orientation ползунка. Имеются два свойства, отсутствующие у TrackBar: SmallChange и LargeChange (по умолчанию они равны 1). Они определяют соответственно «малый» сдвиг при щелчке на кнопке в конце полосы или при нажатии клавиши со стрелкой, и «большой» сдвиг при перемещении на страницу щелчком рядом с бегунком или нажатием клавиш PageUp или PageDown.

    1. Перенесите на форму две полосы прокрутки ScrollBar. Одну из них расположите горизонтально, другую − вертикально. Увеличьте, насколько возможно, длины полос. Для горизонтально расположенной полосы установите SmallChange = 3, LargeChange = 5.

  1. Выполните приложение. Убедитесь в правильном функционировании полос прокрутки.

Событие, соответствующее перемещению пользователем бегунка полосы прокрутки − OnScroll. В процедуру обработчика этого события передается по ссылке параметр ScrollPos − позиция бегунка, которую можно читать, но можно и изменять, и передается параметр ScrollCode, характеризующий вид перемещения бегунка. Этот параметр может иметь значения:

scLineUp,

scLineDown

«Малый» сдвиг: перемещение соответственно вверх или нале-во и вниз или вправо после нажатия кнопки полосы прокрутки или клавиши со стрелкой

scPageUp,

scPageDown

«Большой» сдвиг: перемещение на страницу щелчком рядом с бегунком или нажатием клавиш PageUp или PageDown

scPosition

Пользователь переместил и освободил бегунок

scTrack

Пользователь перемещает бегунок

scTop,

scBottom

Бегунок перемещен соответственно в крайнюю верхнюю или левую позицию и в крайнюю нижнюю или правую позицию

scEndScroll

Окончание перемещения

В обработчике события OnScroll можно поместить операторы, перемещающие требуемую область формы или компонент, а можно поместить операторы, которые управляют некоторым компонентом, используя значение позиции бегунка ScrollPos.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]