Интерфейс BoundedRangeModel
- Все известные реализующие классы:
DefaultBoundedRangeModel
public interface BoundedRangeModel
Sliders и ProgressBars. Определяет четыре взаимосвязанных целочисленных свойства: минимум, максимум, протяжённость и значение. Эти четыре целых числа задают два вложенных диапазона следующим образом: minimum <= value <= value+extent <= maximumВнешний диапазон — это
minimum,maximum, а внутренний — value,value+extent. Внутренний диапазон должен находиться внутри внешнего, т. е. value должно быть меньше или равно maximum, а value+extent должно быть больше или равно minimum; кроме того, maximum должно быть больше или равно minimum. У этой модели есть несколько особенностей, которые могут показаться немного неожиданными. Эти особенности существуют для удобства клиентов Swing BoundedRangeModel, таких как Slider и ScrollBar. - Методы задания минимума и максимума «корректируют» остальные три свойства, чтобы учесть новое значение аргумента. Например, задание минимума модели может изменить её свойства максимума, значения и протяжённости (именно в таком порядке), чтобы сохранить указанные выше ограничения.
- Методы задания значения и протяжённости «корректируют» свои аргументы, чтобы они соответствовали ограничениям, определяемым остальными тремя свойствами. Например, если
value == maximum,setExtent(10)снова установит протяжённость в ноль. - Четыре значения BoundedRangeModel определены как свойства Java Beans, однако для уведомления клиентов об изменениях используются Swing ChangeEvents, а не PropertyChangeEvents. Это сделано для того, чтобы снизить накладные расходы на отслеживание BoundedRangeModel. Изменения часто сообщаются с частотой событий MouseDragged.
Пример задания пользовательских моделей ограниченного диапазона для ползунков см. в разделе Архитектура разделяемой модели документа Обзор архитектуры Swing.
- С версии:
- 1.2
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addChangeListener |
Добавляет ChangeListener в список слушателей модели. |
int |
getExtent() |
Возвращает протяжённость модели — длину внутреннего диапазона, начинающегося со значения модели. |
int |
getMaximum() |
Возвращает максимум модели. |
int |
getMinimum() |
Возвращает минимально допустимое значение. |
int |
getValue() |
Возвращает текущее значение модели. |
boolean |
getValueIsAdjusting() |
Возвращает true, если текущие изменения свойства значения являются частью серии изменений. |
void |
removeChangeListener |
Удаляет ChangeListener из списка слушателей модели. |
void |
setExtent |
Задаёт протяжённость модели. |
void |
setMaximum |
Задаёт максимум модели равным newMaximum. |
void |
setMinimum |
Задаёт минимум модели равным newMinimum. |
void |
setRangeProperties |
Этот метод задаёт все данные модели одним вызовом метода. |
void |
setValue |
Задаёт текущее значение модели равным newValue, если newValue удовлетворяет ограничениям модели. |
void |
setValueIsAdjusting |
Этот атрибут указывает, что любые предстоящие изменения значения модели следует считать одним событием. |
Подробное описание методов
getMinimum
int getMinimum()
- Возвращает:
- значение свойства минимума
- См. также:
setMinimum
void setMinimum(int newMinimum)
minimum <= value <= value+extent <= maximum
Уведомляет всех слушателей, если модель изменяется.
- Параметры:
-
newMinimum— новый минимум модели - См. также:
getMaximum
int getMaximum()
- Возвращает:
- значение свойства максимума.
- См. также:
setMaximum
void setMaximum(int newMaximum)
minimum <= value <= value+extent <= maximum
Уведомляет всех слушателей, если модель изменяется.
- Параметры:
-
newMaximum— новый максимум модели - См. также:
getValue
int getValue()
maximum - extent, а нижняя граница — minimum.- Возвращает:
- значение модели
- См. также:
setValue
void setValue(int newValue)
newValue, если newValue удовлетворяет ограничениям модели. Эти ограничения таковы: minimum <= value <= value+extent <= maximumВ противном случае, если
newValue меньше minimum, ему присваивается minimum; если оно больше maximum, ему присваивается maximum; а если оно больше value+extent, ему присваивается value+extent. При использовании модели BoundedRange с полосой прокрутки значение задаёт положение начала ползунка полосы прокрутки (также называемого «thumb» или «elevator»). Обычно значение указывает начало видимой части прокручиваемого объекта.
Уведомляет всех слушателей, если модель изменяется.
- Параметры:
-
newValue— новое значение модели - См. также:
setValueIsAdjusting
void setValueIsAdjusting(boolean b)
Ползунки и полосы прокрутки используют это свойство во время перетаскивания.
- Параметры:
-
b— true, если предстоящие изменения свойства значения являются частью серии
getValueIsAdjusting
boolean getValueIsAdjusting()
- Возвращает:
- свойство valueIsAdjusting.
- См. также:
getExtent
int getExtent()
- Возвращает:
- значение свойства протяжённости модели
- См. также:
setExtent
void setExtent(int newExtent)
При использовании модели BoundedRange с полосой прокрутки протяжённость задаёт длину ползунка полосы прокрутки (также называемого «thumb» или «elevator»). Обычно протяжённость показывает, какая часть прокручиваемого объекта видна. При использовании с ползунком протяжённость определяет величину, на которую может «перепрыгнуть» значение, например, когда пользователь нажимает PgUp или PgDn.
Уведомляет всех слушателей, если модель изменяется.
- Параметры:
-
newExtent— новая протяжённость модели - См. также:
setRangeProperties
void setRangeProperties(int value, int extent, int min, int max, boolean adjusting)
- Параметры:
-
value— int, задающий текущее значение -
extent— int, задающий величину, на которую может «перепрыгнуть» значение -
min— int, задающий минимальное значение -
max— int, задающий максимальное значение -
adjusting— boolean, равный true, если выполняется серия изменений - См. также:
addChangeListener
void addChangeListener(ChangeListener x)
- Параметры:
-
x— ChangeListener, который нужно добавить - См. также:
removeChangeListener
void removeChangeListener(ChangeListener x)
- Параметры:
-
x— ChangeListener, который нужно удалить - См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/javax/swing/BoundedRangeModel.html