Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
82
Добавлен:
24.02.2016
Размер:
257.54 Кб
Скачать

Полосы прокрутки

Полосы прокрутки к спискам, меню выбора и полям редактирования при необходимости добавляются автоматически. Но можно использовать их и как независимые, отдельные компоненты для обеспечения прокрутки необходимой информации. Создание линейки прокрутки (класс Scrollbar) и добавление ее в контейнер осуществляется, например, следующим образом:

Scrollbar scrlbar=new Scrollbar.HORIZONTAL,25,15,1,100);

add(scrlbar);

Здесь создается горизонтальная линейка прокрутки, ширина которой на экране равна 15. Начальное значение (текущее положение бегунка линейки прокрутки) установлено равным 25, минимальное возможное значение равно 1, а максимальное - 100.

При помощи методов изменять установки линейки прокрутки. Метод setValue()изменяет текущее положение бегунка, а методsetValues()изменяет параметры полосы прокрутки, задаваемые при ее создании. Для установки строчного и страничного инкремента полосы прокрутки используются методыsetLineIncrement() иsetPageIncrement().

Для получении информации о линейке используются следующие методы. Метод getValue()возвращает текущее положение бегунка, методыgetMaximum()иgetMinimum()- возвращают максимальное и минимальное значение для полосы прокрутки. Для получения строчного и страничного инкремента полосы прокрутки используются методыgetLineIncrement() иgetPageIncrement().

Ширину полосы прокрутки на экране (величину ее видимой части) можно узнать методом getVisible(), а ориентация полосы прокрутки определяется методомgetOrientation().

Обработка событий от линейки прокрутки в Java 1.1

При использовании прокрутки вырабатывается событие класса AdjustmentEvent, для его прослушивания применяется интерфейс AdjustmentListener, в котором предусмотрен один метод - adjustmentValueChanged(). Scrollbar myScrollbar=new Scrollbar.HORIZONTAL,25,15,1,100);

add(myScrollbar);

myScrollbar.addAdjustmentListener(new java.awt.event.AdjustmentListener() { public void adjustmentValueChanged(AdjustmentEvent e) { int val = myScrollbar.getValue(); button1.setLabel(String.valueOf(val)); } }); Класс AdjustmentEvent определяет пять типов событий:

AdjustmentEvent.TRACK посылается, когда пользователь передвигает движок.

AdjustmentEvent.UNIT_INCREMENT посылается. когда пользователь щелкает на верхней кнопке в вертикальной линейке или на левой кнопке в горизонтальной или нажимает соответствующие клавиши на клавиатуре.

AdjustmentEvent.UNIT_DECREMENTпосылается. когда пользователь щелкает на нижней кнопке в вертикальной линейке или на правой кнопке в горизонтальной или нажимает соответствующие клавиши на клавиатуре.

AdjustmentEvent.BLOCK_INCREMENT и AdjustmentEvent.BLOCK_DECREMENT посылаются при перемещении движка на страницу.

Для более полного знакомства с классом AdjustmentEvent рекомендуется посмотреть справку.

Метки

Метки-надписи (класс Label) - это простейшие устройства. Они не порождают событий, они используются просто для размещения на экране строк текста. Преимущество использования этих элементов управления для вывода текста перед выводом текста методом drawString() класса Graphics заключается в том, что эти элементы управления (вместе с их содержимым) имеют способность перемещаться по экрану всякий раз, когда изменяется размер контейнера, содержащего эти метки.

Приведем примеры создания меток (или надписей):

// для метки задается выравнивание по левому краю

add(Label lbl1=new Label("1st string", Label.LEFT);

// для метки задается выравнивание по правому краю

add(Label lbl1=new Label("1st string", Label.RIGHT);

// для метки задается выравнивание по центру

add(Label lbl1=new Label("1st string", Label.CENTER);

Для изменения установок меток служат методы: setAlignment()- устанавливает режим выравнивания,setText()- устанавливает текст надписи. Для получения текущего режима выравнивания используется методgetAlignment(), а для определения текста надписи - методgetText().