Полосы прокрутки (scroll bars) используются для выбора непрерывных значений из некоторого интервала с конечными границами. Полосы прокрутки могут быть ориентированы горизонтально или вертикально. Полоса прокрутки фактически является композицией нескольких индивидуальных частей. На каждом конце полосы имеется кнопка-стрелка, которую можно нажимать (щелчком мыши), чтобы переместить текущее значение полосы лрокрутки на одну позицию в направлении стрелки. Текущее значение полосы прокрутки относительно ее минимальных и максимальных значений обозначено ползунком (или бегунком) полосы прокрутки. Ползунок может перетаскиваться пользователем в новую позицию. Пользователь может шелкать мышью в фоновых частях полосы, находящихся с обеих сторон ползунка, чтобы заставить бегунок перескакивать в этом направлении с некоторым приращением, большим чем 1. Обычно это действие приводит к некоторой форме листания страницы вверх (page up) или вниз (page down). Полосы прокрутки инкапсулированы в классе Scrollbar. В Scrollbar определены следующие конструкторы:
Scrollbar()
Scrollbar(int style)
Scrollbar(int style, int initialValue, int thumbSize, int min, int max)
Первая форма создает вертикальную полосу прокрутки. Вторая и третья — позволяют указать ориентацию полосы прокрутки. Если параметр style задается как Scrollbar.VERTICAL, то создается вертикальная полоса прокрутки, если — как Scrollbar.HORIZONTAL, то — горизонтальная. В третьей форме конструктора начальное значение полосы прокрутки передается в параметре initialValue, а высота ползунка — в thimbSize. Минимальное и максимальное значения для полосы прокрутки указываются в параметрах min и max.
Если вы создаете полосу прокрутки при помощи одного из первых двух конструкторов, то перед использованием нужно установить ее параметры, вызывая метод setvalues() следующего формата:
void setValues (int initialValue, int thumbSize, int min, int max)
Параметры имеют те же значения, как в только что описанном третьем конструкторе.
Чтобы получить текущее значение полосы прокрутки, вызовите метод getValue(). Он возвращает текущую установку. Чтобы установить текущее значение, вызовите setValue(). Форматы этих методов:
int getValue()
void setValue(int newValue)
Здесь newValue определяет новое значение для полосы прокрутки. Когда вы устанавливаете значение, ползунок внутри полосы прокрутки будет перемещен в позицию, отражающую новое значение.
Вы можете также отыскивать минимальное и максимальное значения через показанные ниже методы getMinimum() и getMaximum():
int getMinimum()
int getMaximum()
Для прокрутки вверх или вниз на одну строку по умолчанию используется (строчное) приращение, равное 1. Можно изменить это приращение, вызывая метод setUnitIncrement(). По умолчанию, страничные (page-up и page-down) приращения равны 10. Это значение можно изменять, вызывая setBlockIncrement(). Форматы этих методов: