Spec-Zone.ru › OpenJDK 24

Класс 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 для Basic Look and Feel

Краткое описание вложенных классов

Модификатор и тип Класс Описание
protected class  BasicScrollBarUI.ArrowButtonListener
Обработчик событий клавиш курсора.
protected class  BasicScrollBarUI.ModelListener
Обработчик изменений модели.
class  BasicScrollBarUI.PropertyChangeHandler
Обработчик изменений свойств
protected class  BasicScrollBarUI.ScrollListener
Обработчик событий прокрутки, инициированных в ScrollPane.
protected class  BasicScrollBarUI.TrackListener
Отслеживание перетаскивания мышью.

Краткое описание полей

Модификатор и тип Поле Описание
protected BasicScrollBarUI.ArrowButtonListener buttonListener
Обработчик нажатий кнопок
protected JButton decrButton
Кнопка уменьшения
protected static final int DECREASE_HIGHLIGHT
Снижение выделения
protected int decrGap
Расстояние между кнопкой уменьшения и полосой прокрутки.
protected JButton incrButton
Кнопка увеличения
protected static final int INCREASE_HIGHLIGHT
Увеличение выделения
protected int incrGap
Расстояние между кнопкой увеличения и полосой прокрутки.
protected boolean isDragging
Перетаскивание
protected Dimension maximumThumbSize
Максимальный размер ползунка
protected Dimension minimumThumbSize
Минимальный размер ползунка
protected BasicScrollBarUI.ModelListener modelListener
Обработчик модели
protected static final 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()
Создаёт BasicScrollBarUI.

Краткое описание методов

Модификатор и тип Метод Описание
void addLayoutComponent(String name, Component child)
Если компоновщик использует строку для каждого компонента, добавляет компонент comp в компоновку, связывая его со строкой, заданной name.
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)
Предпочтительная ширина вертикальной полосы прокрутки — это максимальное значение предпочтительных ширин кнопок увеличения/уменьшения (без null) и минимальной ширины ползунка.
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, если курсор мыши находится над ползунком.
void layoutContainer(Container scrollbarContainer)
Выполняет компоновку указанного контейнера.
protected void layoutHScrollbar(JScrollBar sb)
Выполняет компоновку горизонтальной полосы прокрутки.
protected void layoutVScrollbar(JScrollBar sb)
Выполняет компоновку вертикальной полосы прокрутки.
Dimension minimumLayoutSize(Container scrollbarContainer)
Вычисляет минимальные размеры для указанного контейнера, учитывая содержащиеся в нём компоненты.
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)
Отрисовывает дорожку.
Dimension preferredLayoutSize(Container scrollbarContainer)
Вычисляет предпочтительные размеры для указанного контейнера, учитывая содержащиеся в нём компоненты.
void removeLayoutComponent(Component child)
Удаляет указанный компонент из компоновки.
protected void scrollByBlock(int direction)
Прокрутка по блокам.
protected void scrollByUnit(int direction)
Прокрутка по единицам.
protected void setThumbBounds(int x, int y, int width, int height)
Устанавливает границы ползунка и вызывает перерисовку, включающую старые и новые границы ползунка.
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

Подробное описание полей

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()
Конструирует BasicScrollBarUI.

Подробное описание методов

createUI

public static ComponentUI createUI(JComponent c)
Создаёт UI.
Параметры:
c - компонент
Возвращает:
UI

configureScrollBarColors

protected void configureScrollBarColors()
Настраивает цвета скроллбара.

installUI

public void installUI(JComponent c)
Устанавливает UI.
Переопределяет:
installUI в классе ComponentUI
Параметры:
c - компонент
См. также:
  • ComponentUI.uninstallUI(javax.swing.JComponent)
  • JComponent.setUI(javax.swing.plaf.ComponentUI)
  • JComponent.updateUI()

uninstallUI

public void uninstallUI(JComponent c)
Удаляет UI.
Переопределяет:
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)
Устанавливает, находится ли в данный момент курсор мыши над ползунком.
Parameters:
active - True указывает, что ползунок в данный момент активен.
Since:
1.5

isThumbRollover

public boolean isThumbRollover()
Возвращает true, если в данный момент курсор мыши находится над ползунком.
Returns:
true, если ползунок в данный момент активен
Since:
1.5

getPreferredSize

public Dimension getPreferredSize(JComponent c)
Предпочтительная ширина вертикальной полосы прокрутки — это максимальная из предпочтительных ширин кнопок увеличения/уменьшения (без null), и минимальная ширина ползунка. Предпочтительная высота — это сумма предпочтительных высот тех же элементов. Основа для предпочтительного размера горизонтальной полосы прокрутки аналогична.

Предпочтительный размер вычисляется только один раз, последующие вызовы этого метода просто возвращают кэшированный размер.

Overrides:
getPreferredSize в классе ComponentUI
Parameters:
c - JScrollBar, делегирующий этот метод нам
Returns:
предпочтительный размер Basic JScrollBar
See Also:
  • getMaximumSize(javax.swing.JComponent)
  • ComponentUI.getMinimumSize(javax.swing.JComponent)

getMaximumSize

public Dimension getMaximumSize(JComponent c)
Описание скопировано из класса: ComponentUI
Возвращает максимальный размер указанного компонента, соответствующий внешнему виду. Если null, максимальный размер будет рассчитан менеджером компоновки компонента (это предпочтительный подход для любого компонента со специфическим установленным менеджером компоновки). По умолчанию этот метод вызывает getPreferredSize и возвращает это значение.
Overrides:
getMaximumSize в классе ComponentUI
Parameters:
c - JScrollBar, делегирующий этот метод нам.
Returns:
new Dimension(Integer.MAX_VALUE, Integer.MAX_VALUE);
See Also:
  • ComponentUI.getMinimumSize(javax.swing.JComponent)
  • getPreferredSize(javax.swing.JComponent)

createDecreaseButton

protected JButton createDecreaseButton(int orientation)
Создаёт кнопку уменьшения.
Parameters:
orientation - ориентация
Returns:
кнопка уменьшения

createIncreaseButton

protected JButton createIncreaseButton(int orientation)
Создаёт кнопку увеличения.
Parameters:
orientation - ориентация
Returns:
кнопка увеличения

paintDecreaseHighlight

protected void paintDecreaseHighlight(Graphics g)
Рисует выделение кнопки уменьшения.
Parameters:
g - графика

paintIncreaseHighlight

protected void paintIncreaseHighlight(Graphics g)
Рисует выделение кнопки увеличения.
Parameters:
g - графика

paintTrack

protected void paintTrack(Graphics g, JComponent c, Rectangle trackBounds)
Рисует область.
Parameters:
g - графика
c - компонент
trackBounds - границы области

paintThumb

protected void paintThumb(Graphics g, JComponent c, Rectangle thumbBounds)
Рисует ползунок.
Parameters:
g - графика
c - компонент
thumbBounds - границы ползунка

getMinimumThumbSize

protected Dimension getMinimumThumbSize()
Возвращает минимально допустимый размер ползунка. Если полоса прокрутки становится настолько маленькой, что этот размер недоступен, ползунок будет скрыт.

Предупреждение: значение, возвращаемое этим методом, не должно изменяться, это общая статическая константа.

Returns:
Минимально допустимый размер ползунка.
See Also:
  • getMaximumThumbSize()

getMaximumThumbSize

protected Dimension getMaximumThumbSize()
Возвращает максимально допустимый размер ползунка. Чтобы создать ползунок фиксированного размера, необходимо, чтобы этот метод и getMinimumThumbSize возвращали одно и то же значение.

Предупреждение: значение, возвращаемое этим методом, не должно изменяться, это общая статическая константа.

Returns:
Максимально допустимый размер ползунка.
See Also:
  • getMinimumThumbSize()

addLayoutComponent

public void addLayoutComponent(String name, Component child)
Описание скопировано из интерфейса: LayoutManager
Если менеджер компоновки использует строку для каждого компонента, добавляет компонент comp в компоновку, ассоциируя его со строкой, заданной name.
Specified by:
addLayoutComponent в интерфейсе LayoutManager
Parameters:
name - строка, которая должна быть ассоциирована с компонентом
child - компонент, который должен быть добавлен

removeLayoutComponent

public void removeLayoutComponent(Component child)
Описание скопировано из интерфейса: LayoutManager
Удаляет указанный компонент из компоновки.
Specified by:
removeLayoutComponent в интерфейсе LayoutManager
Parameters:
child - компонент, который должен быть удален

preferredLayoutSize

public Dimension preferredLayoutSize(Container scrollbarContainer)
Описание скопировано из интерфейса: LayoutManager
Вычисляет предпочтительные размеры для указанного контейнера, учитывая содержащиеся в нём компоненты.
Specified by:
preferredLayoutSize в интерфейсе LayoutManager
Parameters:
scrollbarContainer - контейнер, который должен быть расположен
Returns:
предпочтительные размеры контейнера
See Also:
  • LayoutManager.minimumLayoutSize(java.awt.Container)

minimumLayoutSize

public Dimension minimumLayoutSize(Container scrollbarContainer)
Описание скопировано из интерфейса: LayoutManager
Вычисляет минимальные размеры для указанного контейнера, учитывая содержащиеся в нём компоненты.
Specified by:
minimumLayoutSize в интерфейсе LayoutManager
Parameters:
scrollbarContainer - компонент, который должен быть расположен
Returns:
минимальные размеры контейнера
See Also:
  • LayoutManager.preferredLayoutSize(java.awt.Container)

layoutVScrollbar

protected void layoutVScrollbar(JScrollBar sb)
Размещает вертикальную полосу прокрутки.
Parameters:
sb - полоса прокрутки

layoutHScrollbar

protected void layoutHScrollbar(JScrollBar sb)
Размещает горизонтальную полосу прокрутки.
Parameters:
sb - полоса прокрутки

layoutContainer

public void layoutContainer(Container scrollbarContainer)
Описание скопировано из интерфейса: LayoutManager
Располагает указанный контейнер.
Specified by:
layoutContainer в интерфейсе LayoutManager
Parameters:
scrollbarContainer - контейнер, который должен быть расположен

Установить границы ползунка

protected void setThumbBounds(int x, int y, int width, int height)
Установите границы ползунка и заставьте перерисовать, включив как старые, так и новые границы ползунка.
Параметры:
x - задать положение x ползунка
y - задать положение y ползунка
width - задать ширину ползунка
height - задать высоту ползунка
См. также:
  • getThumbBounds()

Получить границы ползунка

protected Rectangle getThumbBounds()
Возвращает текущий размер/местоположение ползунка.

Предупреждение: значение, возвращаемое этим методом, не должно изменяться; это ссылка на фактический прямоугольник, а не копия.

Возвращает:
Текущий размер/местоположение ползунка.
См. также:
  • setThumbBounds(int, int, int, int)

Получить границы полосы прокрутки

protected Rectangle getTrackBounds()
Возвращает текущие границы полосы прокрутки, т. е. пространство между кнопками увеличения и уменьшения, за вычетом отступов. Возвращаемое значение этого метода обновляется каждый раз, когда полоса прокрутки выводится (валидируется).

Предупреждение: значение, возвращаемое этим методом, не должно изменяться; это ссылка на фактический прямоугольник, а не копия.

Возвращает:
текущие границы полосы прокрутки
См. также:
  • layoutContainer(java.awt.Container)

Прокрутить на блок

protected void scrollByBlock(int direction)
Прокручивает на блок.
Параметры:
direction - направление прокрутки

Прокрутить на единицу

protected void scrollByUnit(int direction)
Прокручивает на единицу.
Параметры:
direction - направление прокрутки

Поддерживает абсолютное позиционирование

public boolean getSupportsAbsolutePositioning()
Указывает, может ли пользователь абсолютно позиционировать ползунок с помощью жеста мыши (обычно средней кнопки мыши).
Возвращает:
true, если жест мыши может абсолютно позиционировать ползунок
Since:
1.5

© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/plaf/basic/BasicScrollBarUI.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API