Класс BasicScrollBarUI
- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.ScrollBarUI
-
- javax.swing.plaf.basic.BasicScrollBarUI
- Все реализованные интерфейсы:
-
LayoutManager,SwingConstants
- Непосредственные известные подклассы:
-
MetalScrollBarUI,SynthScrollBarUI
public class BasicScrollBarUI extends ScrollBarUI implements LayoutManager, SwingConstants
Реализация ScrollBarUI для базового внешнего вида
Вложенные классы
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class | BasicScrollBarUI.ArrowButtonListener | Обработчик нажатия клавиш курсора. |
protected class | BasicScrollBarUI.ModelListener | Обработчик изменений модели. |
class | BasicScrollBarUI.PropertyChangeHandler | Обработчик изменений свойств |
protected class | BasicScrollBarUI.ScrollListener | Обработчик событий прокрутки, инициированных в |
protected class | BasicScrollBarUI.TrackListener | Обработчик перетаскивания мыши. |
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected BasicScrollBarUI.ArrowButtonListener | buttonListener | Обработчик нажатий кнопок |
protected JButton | decrButton | Кнопка уменьшения |
protected static int | DECREASE_HIGHLIGHT | Выделение при уменьшении |
protected int | decrGap | Расстояние между кнопкой уменьшения и полосой. |
protected JButton | incrButton | Кнопка увеличения |
protected static int | INCREASE_HIGHLIGHT | Выделение при увеличении |
protected int | incrGap | Расстояние между кнопкой увеличения и полосой. |
protected boolean | isDragging | Перетаскивание |
protected Dimension | maximumThumbSize | Максимальный размер ползунка |
protected Dimension | minimumThumbSize | Минимальный размер ползунка |
protected BasicScrollBarUI.ModelListener | modelListener | Обработчик модели |
protected static int | NO_HIGHLIGHT | Без выделения |
protected PropertyChangeListener | propertyChangeListener | Обработчик изменений свойств |
protected JScrollBar | scrollbar | Ползунок |
protected int | scrollBarWidth | Подсказка о том, какой шириной (при вертикальном расположении) или высотой (при горизонтальном) должен быть. |
protected BasicScrollBarUI.ScrollListener | scrollListener | Обработчик прокрутки |
protected Timer | scrollTimer | Таймер прокрутки |
protected Color | thumbColor | Цвет ползунка |
protected Color | thumbDarkShadowColor | Цвет тёмной тени ползунка |
protected Color | thumbHighlightColor | Цвет выделения ползунка |
protected Color | thumbLightShadowColor | Цвет светлой тени ползунка |
protected Rectangle | thumbRect | Прямоугольник ползунка |
protected Color | trackColor | Цвет полосы |
protected int | trackHighlight | Выделение полосы |
protected Color | trackHighlightColor | Цвет выделения полосы |
protected BasicScrollBarUI.TrackListener | trackListener | Обработчик событий полосы |
protected Rectangle | trackRect | Прямоугольник полосы |
Поля, унаследованные от интерфейса javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
BasicScrollBarUI() |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
protected void | configureScrollBarColors() | Настраивает цвета полосы прокрутки. |
protected BasicScrollBarUI.ArrowButtonListener | createArrowButtonListener() | Создаёт слушатель нажатия на стрелки. |
protected JButton | createDecreaseButton(int orientation) | Создаёт кнопку уменьшения. |
protected JButton | createIncreaseButton(int orientation) | Создаёт кнопку увеличения. |
protected BasicScrollBarUI.ModelListener | createModelListener() | Создаёт слушателя модели. |
protected PropertyChangeListener | createPropertyChangeListener() | Создаёт слушателя изменения свойств. |
protected BasicScrollBarUI.ScrollListener | createScrollListener() | Создаёт слушателя прокрутки. |
protected BasicScrollBarUI.TrackListener | createTrackListener() | Создаёт слушателя полосы прокрутки. |
static ComponentUI | createUI(JComponent c) | Создаёт пользовательский интерфейс. |
Dimension | getMaximumSize(JComponent c) | Возвращает максимальный размер указанного компонента, подходящий для текущего вида и ощущений. |
protected Dimension | getMaximumThumbSize() | Возвращает максимальный допустимый размер ползунка. |
protected Dimension | getMinimumThumbSize() | Возвращает минимальный допустимый размер ползунка. |
Dimension | getPreferredSize(JComponent c) | Предпочтительная ширина вертикальной полосы прокрутки — максимальная из предпочтительных ширин кнопок увеличения/уменьшения и минимальной ширины ползунка. |
boolean | getSupportsAbsolutePositioning() | Указывает, можно ли абсолютно позиционировать ползунок с помощью жеста мыши (обычно средней кнопки мыши). |
protected Rectangle | getThumbBounds() | Возвращает текущий размер/положение ползунка. |
protected Rectangle | getTrackBounds() | Возвращает текущие границы полосы прокрутки, то есть пространство между кнопками увеличения и уменьшения, за вычетом отступов. |
protected void | installComponents() | Устанавливает компоненты. |
protected void | installDefaults() | Устанавливает значения по умолчанию. |
protected void | installKeyboardActions() | Устанавливает действия с клавиатуры. |
protected void | installListeners() | Устанавливает слушателей. |
void | installUI(JComponent c) | Устанавливает пользовательский интерфейс. |
boolean | isThumbRollover() | Возвращает true, если курсор мыши в настоящее время находится над ползунком. |
protected void | layoutHScrollbar(JScrollBar sb) | Размещает вертикальную полосу прокрутки. |
protected void | layoutVScrollbar(JScrollBar sb) | Размещает вертикальную полосу прокрутки. |
protected void | paintDecreaseHighlight(Graphics g) | Рисует выделение кнопки уменьшения. |
protected void | paintIncreaseHighlight(Graphics g) | Рисует выделение кнопки увеличения. |
protected void | paintThumb(Graphics g,
JComponent c,
Rectangle thumbBounds) | Рисует ползунок. |
protected void | paintTrack(Graphics g,
JComponent c,
Rectangle trackBounds) | Рисует полосу прокрутки. |
protected void | scrollByBlock(int direction) | Прокрутка блоком. |
protected void | scrollByUnit(int direction) | Прокрутка по единицам. |
protected void | setThumbBounds(int x,
int y,
int width,
int height) | Устанавливает границы ползунка и вызывает перерисовку, которая включает старые и новые thumbBounds. |
protected void | setThumbRollover(boolean active) | Устанавливает, находится ли курсор мыши над ползунком. |
protected void | uninstallComponents() | Удаляет компоненты. |
protected void | uninstallDefaults() | Удаляет значения по умолчанию. |
protected void | uninstallKeyboardActions() | Удаляет действия с клавиатуры. |
protected void | uninstallListeners() | Удаляет слушателей. |
void | uninstallUI(JComponent c) | Удаляет пользовательский интерфейс. |
Методы, объявленные в классе javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMinimumSize, paint, update Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Методы, объявленные в интерфейсе java.awt.LayoutManager
addLayoutComponent, layoutContainer, minimumLayoutSize, preferredLayoutSize, removeLayoutComponent Поля
minimumThumbSize
protected Dimension minimumThumbSize
Минимальный размер ползунка
maximumThumbSize
protected Dimension maximumThumbSize
Максимальный размер ползунка
thumbHighlightColor
protected Color thumbHighlightColor
Цвет выделения ползунка
thumbLightShadowColor
protected Color thumbLightShadowColor
Цвет светлой тени ползунка
thumbDarkShadowColor
protected Color thumbDarkShadowColor
Цвет тёмной тени ползунка
thumbColor
protected Color thumbColor
Цвет ползунка
trackColor
protected Color trackColor
Цвет полосы прокрутки
trackHighlightColor
protected Color trackHighlightColor
Цвет выделения полосы прокрутки
scrollbar
protected JScrollBar scrollbar
Полоса прокрутки
incrButton
protected JButton incrButton
Кнопка увеличения
decrButton
protected JButton decrButton
Кнопка уменьшения
isDragging
protected boolean isDragging
Перетаскивание
trackListener
protected BasicScrollBarUI.TrackListener trackListener
Слушатель полосы прокрутки
buttonListener
protected BasicScrollBarUI.ArrowButtonListener buttonListener
Слушатель нажатия на кнопки
modelListener
protected BasicScrollBarUI.ModelListener modelListener
Слушатель модели
thumbRect
protected Rectangle thumbRect
Прямоугольник ползунка
trackRect
protected Rectangle trackRect
Прямоугольник полосы прокрутки
trackHighlight
protected int trackHighlight
Выделение полосы прокрутки
NO_HIGHLIGHT
protected static final int NO_HIGHLIGHT
Нет выделения
- См. также:
- Значения константных полей
DECREASE_HIGHLIGHT
protected static final int DECREASE_HIGHLIGHT
Выделение кнопки уменьшения
- См. также:
- Значения константных полей
INCREASE_HIGHLIGHT
protected static final int INCREASE_HIGHLIGHT
Выделение кнопки увеличения
- См. также:
- Значения константных полей
scrollListener
protected BasicScrollBarUI.ScrollListener scrollListener
Слушатель прокрутки
propertyChangeListener
protected PropertyChangeListener propertyChangeListener
Слушатель изменений свойств
scrollTimer
protected Timer scrollTimer
Таймер прокрутки
scrollBarWidth
protected int scrollBarWidth
Подсказка о ширине (при вертикальной ориентации) или высоте (при горизонтальной ориентации).
- С тех пор как:
- 1.7
incrGap
protected int incrGap
Расстояние между кнопкой увеличения и полосой прокрутки. Может быть отрицательным числом. Если отрицательное, произойдёт перекрытие между кнопкой и полосой, что полезно для кнопок со сложной формой.
- С тех пор как:
- 1.7
decrGap
protected int decrGap
Расстояние между кнопкой уменьшения и полосой прокрутки. Может быть отрицательным числом. Если отрицательное, произойдёт перекрытие между кнопкой и полосой, что полезно для кнопок со сложной формой.
- С тех пор как:
- 1.7
Конструкторы
BasicScrollBarUI
public BasicScrollBarUI()
Методы
createUI
public static ComponentUI createUI(JComponent c)
Создаёт пользовательский интерфейс.
- Параметры:
-
c- компонент - Возвращает:
- пользовательский интерфейс
configureScrollBarColors
protected void configureScrollBarColors()
Настраивает цвета полосы прокрутки.
installUI
public void installUI(JComponent c)
Устанавливает пользовательский интерфейс.
- Переопределяет:
-
installUIв классеComponentUI - Параметры:
-
c- компонент - См. также:
-
ComponentUI.uninstallUI(javax.swing.JComponent),JComponent.setUI(javax.swing.plaf.ComponentUI),JComponent.updateUI()
uninstallUI
public void uninstallUI(JComponent c)
Удаляет пользовательский интерфейс.
- Переопределяет:
-
uninstallUIв классеComponentUI - Параметры:
-
c- компонент - См. также:
-
ComponentUI.installUI(javax.swing.JComponent),JComponent.updateUI()
installDefaults
protected void installDefaults()
Устанавливает значения по умолчанию.
installComponents
protected void installComponents()
Устанавливает компоненты.
uninstallComponents
protected void uninstallComponents()
Удаляет компоненты.
installListeners
protected void installListeners()
Устанавливает слушатели.
installKeyboardActions
protected void installKeyboardActions()
Устанавливает действия клавиатуры.
uninstallKeyboardActions
protected void uninstallKeyboardActions()
Удаляет действия клавиатуры.
uninstallListeners
protected void uninstallListeners()
Удаляет слушателей.
uninstallDefaults
protected void uninstallDefaults()
Удаляет значения по умолчанию.
createTrackListener
protected BasicScrollBarUI.TrackListener createTrackListener()
Создаёт слушатель полосы прокрутки.
- Возвращает:
- слушатель полосы прокрутки
createArrowButtonListener
protected BasicScrollBarUI.ArrowButtonListener createArrowButtonListener()
Создаёт слушатель кнопок стрелок.
- Возвращает:
- слушатель кнопок стрелок
createModelListener
protected BasicScrollBarUI.ModelListener createModelListener()
Создаёт слушателя модели.
- Возвращает:
- слушатель модели
createScrollListener
protected BasicScrollBarUI.ScrollListener createScrollListener()
Создаёт слушатель прокрутки.
- Возвращает:
- слушатель прокрутки
createPropertyChangeListener
protected PropertyChangeListener createPropertyChangeListener()
Создаёт слушателя изменений свойств.
- Возвращает:
- слушатель изменений свойств
setThumbRollover
protected void setThumbRollover(boolean active)
Устанавливает, находится ли мышь над ползунком.
- Параметры:
-
active- True указывает, что ползунок активен. - С:
- 1.5
isThumbRollover
public boolean isThumbRollover()
Возвращает true, если мышь находится над ползунком.
- Возвращает:
- true, если ползунок активен
- С:
- 1.5
getPreferredSize
public Dimension getPreferredSize(JComponent c)
Предпочтительная ширина вертикальной полосы прокрутки — максимальное значение предпочтительных ширин кнопок увеличения/уменьшения и минимальной ширины ползунка. Предпочтительная высота — сумма предпочтительных высот тех же частей. Основа предпочтительного размера горизонтальной полосы прокрутки аналогична.
Предпочтительный размер вычисляется только один раз, последующие вызовы этого метода просто возвращают кэшированный размер.
- Переопределяет:
-
getPreferredSizeв классеComponentUI - Параметры:
-
c-JScrollBar, делегирующий этот метод нам - Возвращает:
- предпочтительный размер Basic JScrollBar
- См. также:
-
getMaximumSize(javax.swing.JComponent),ComponentUI.getMinimumSize(javax.swing.JComponent)
getMaximumSize
public Dimension getMaximumSize(JComponent c)
Описание скопировано из класса: ComponentUI
Возвращает максимальный размер указанного компонента, соответствующий используемой внешности. Если null возвращается, максимальный размер будет рассчитан менеджером компоновки компонента (это предпочтительный подход для любого компонента с установленным конкретным менеджером компоновки). Стандартная реализация этого метода вызывает getPreferredSize и возвращает это значение.
- Переопределяет:
-
getMaximumSizeв классеComponentUI - Параметры:
-
c- JScrollBar, делегирующий этот метод нам. - Возвращает:
- new Dimension(Integer.MAX_VALUE, Integer.MAX_VALUE);
- См. также:
-
ComponentUI.getMinimumSize(javax.swing.JComponent),getPreferredSize(javax.swing.JComponent)
createDecreaseButton
protected JButton createDecreaseButton(int orientation)
Создаёт кнопку уменьшения.
- Параметры:
-
orientation- ориентация - Возвращает:
- кнопка уменьшения
createIncreaseButton
protected JButton createIncreaseButton(int orientation)
Создаёт кнопку увеличения.
- Параметры:
-
orientation- ориентация - Возвращает:
- кнопка увеличения
paintDecreaseHighlight
protected void paintDecreaseHighlight(Graphics g)
Отрисовывает выделение кнопки уменьшения.
- Параметры:
-
g- графика
paintIncreaseHighlight
protected void paintIncreaseHighlight(Graphics g)
Отрисовывает выделение кнопки увеличения.
- Параметры:
-
g- графика
paintTrack
protected void paintTrack(Graphics g,
JComponent c,
Rectangle trackBounds) Отрисовывает полосу прокрутки.
- Параметры:
-
g- графика -
c- компонент -
trackBounds- рамка полосы прокрутки
paintThumb
protected void paintThumb(Graphics g,
JComponent c,
Rectangle thumbBounds) Отрисовывает ползунок.
- Параметры:
-
g- графика -
c- компонент -
thumbBounds- рамка ползунка
getMinimumThumbSize
protected Dimension getMinimumThumbSize()
Возвращает минимально допустимый размер ползунка. Если полоса прокрутки становится настолько маленькой, что этот размер недоступен, ползунок будет скрыт.
Внимание: значение, возвращаемое этим методом, не должно изменяться, это общая статическая константа.
- Возвращает:
- Минимально допустимый размер ползунка.
- См. также:
getMaximumThumbSize()
getMaximumThumbSize
protected Dimension getMaximumThumbSize()
Возвращает максимально допустимый размер ползунка. Чтобы создать ползунок фиксированного размера, необходимо сделать так, чтобы этот метод и getMinimumThumbSize возвращали одно и то же значение.
Внимание: значение, возвращаемое этим методом, не должно изменяться, это общая статическая константа.
- Возвращает:
- Максимально допустимый размер ползунка.
- См. также:
getMinimumThumbSize()
layoutVScrollbar
protected void layoutVScrollbar(JScrollBar sb)
Компонует вертикальную полосу прокрутки.
- Параметры:
-
sb- полоса прокрутки
layoutHScrollbar
protected void layoutHScrollbar(JScrollBar sb)
Компонует горизонтальную полосу прокрутки.
- Параметры:
-
sb- полоса прокрутки
setThumbBounds
protected void setThumbBounds(int x,
int y,
int width,
int height) Устанавливает рамки ползунка и принудительно перерисовывает, включающее старые и новые рамки ползунка.
- Параметры:
-
x- устанавливает положение x ползунка -
y- устанавливает положение y ползунка -
width- устанавливает ширину ползунка -
height- устанавливает высоту ползунка - См. также:
getThumbBounds()
getThumbBounds
protected Rectangle getThumbBounds()
Возвращает текущий размер/положение ползунка.
Внимание: значение, возвращаемое этим методом, не должно изменяться, это ссылка на фактический прямоугольник, а не копия.
- Возвращает:
- текущий размер/положение ползунка.
- См. также:
setThumbBounds(int, int, int, int)
getTrackBounds
protected Rectangle getTrackBounds()
Возвращает текущие рамки полосы прокрутки, т.е. пространство между кнопками увеличения и уменьшения, за вычетом отступов. Значение, возвращаемое этим методом, обновляется каждый раз, когда полоса прокрутки компонуется (валидируется).
Внимание: значение, возвращаемое этим методом, не должно изменяться, это ссылка на фактический прямоугольник, а не копия.
- Возвращает:
- текущие рамки полосы прокрутки
- См. также:
LayoutManager.layoutContainer(java.awt.Container)
scrollByBlock
protected void scrollByBlock(int direction)
Прокрутка блоками.
- Параметры:
-
direction- направление прокрутки
scrollByUnit
protected void scrollByUnit(int direction)
Прокрутка по единицам.
- Параметры:
-
direction- направление прокрутки
getSupportsAbsolutePositioning
public boolean getSupportsAbsolutePositioning()
Указывает, может ли пользователь абсолютно позиционировать ползунок с помощью жеста мыши (обычно средней кнопкой мыши).
- Возвращает:
- true, если жестом мыши можно абсолютно позиционировать ползунок
- С:
- 1.5
© 1993, 2020, 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/11/docs/api/java.desktop/javax/swing/plaf/basic/BasicScrollBarUI.html