Класс 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() |
Краткое описание методов
| Модификатор и тип | Метод и описание |
|---|---|
void |
addLayoutComponent(String name,
Component child) Если менеджер компоновки использует строку для каждого компонента, добавляет компонент |
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, если курсор мыши находится над ползунком. |
void |
layoutContainer(Container scrollbarContainer) Размещает указанный контейнер. |
protected void |
layoutHScrollbar(JScrollBar sb) |
protected void |
layoutVScrollbar(JScrollBar sb) |
Dimension |
minimumLayoutSize(Container scrollbarContainer) Вычисляет минимальные размеры для указанного контейнера, учитывая содержащиеся в нем компоненты. |
void |
paint(Graphics g,
JComponent c) Рисует указанный компонент соответствующим образом для внешнего вида. |
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) Устанавливает границы ползунка и принудительно перерисовывает, включая старые 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, update Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Поля
minimumThumbSize
protected Dimension minimumThumbSize
maximumThumbSize
protected Dimension maximumThumbSize
цветВыделенияПолзунка
protected Color thumbHighlightColor
цветСветлойТениПолзунка
protected Color thumbLightShadowColor
цветТёмнойТениПолзунка
protected Color thumbDarkShadowColor
цветПолзунка
protected Color thumbColor
цветДорожки
protected Color trackColor
цветПодсвечиванияДорожки
protected Color trackHighlightColor
scrollbar
protected JScrollBar scrollbar
кнопкаУвеличения
protected JButton incrButton
кнопкаУменьшения
protected JButton decrButton
isDragging
protected boolean isDragging
слушательДорожки
protected BasicScrollBarUI.TrackListener trackListener
слушательКнопки
protected BasicScrollBarUI.ArrowButtonListener buttonListener
слушательМодели
protected BasicScrollBarUI.ModelListener modelListener
прямоугольникПолзунка
protected Rectangle thumbRect
прямоугольникДорожки
protected Rectangle trackRect
выделениеДорожки
protected int trackHighlight
ОТСУТСТВИЕ_ВЫДЕЛЕНИЯ
protected static final int NO_HIGHLIGHT
- См. также:
- Значения константных полей
ВЫДЕЛЕНИЕ_УМЕНЬШЕНИЯ
protected static final int DECREASE_HIGHLIGHT
- См. также:
- Значения константных полей
ВЫДЕЛЕНИЕ_УВЕЛИЧЕНИЯ
protected static final int INCREASE_HIGHLIGHT
- См. также:
- Значения константных полей
слушательПрокрутки
protected BasicScrollBarUI.ScrollListener scrollListener
слушательИзмененийСвойств
protected PropertyChangeListener propertyChangeListener
таймерПрокрутки
protected Timer scrollTimer
ширинаСкроллбара
protected int scrollBarWidth
Подсказка о том, какой шириной (при вертикальной прокрутке) или высотой (при горизонтальной прокрутке) должен быть.
- С:
- 1.7
отступКнопкиУвеличения
protected int incrGap
Расстояние между кнопкой увеличения и полосой прокрутки. Может быть отрицательным числом. Если отрицательное, то произойдет перекрытие между кнопкой и полосой прокрутки, что полезно для кнопок со сложной формой.
- С:
- 1.7
отступКнопкиУменьшения
protected int decrGap
Расстояние между кнопкой уменьшения и полосой прокрутки. Может быть отрицательным числом. Если отрицательное, то произойдет перекрытие между кнопкой и полосой прокрутки, что полезно для кнопок со сложной формой.
- С:
- 1.7
Конструкторы
BasicScrollBarUI
public BasicScrollBarUI()
Методы
createUI
public static ComponentUI createUI(JComponent c)
настроитьЦветаСкроллбара
protected void configureScrollBarColors()
установитьИнтерфейс
public void installUI(JComponent c)
Описание скопировано из класса: ComponentUI
Конфигурирует указанный компонент соответствующим образом для внешнего вида. Этот метод вызывается, когда экземпляр ComponentUI устанавливается в качестве делегата UI для указанного компонента. Этот метод должен полностью настроить компонент для внешнего вида, включая следующее:
- Установить значения свойств по умолчанию для цвета, шрифтов, границ, значков, непрозрачности и т. д. на компоненте. Всякий раз, когда это возможно, значения свойств, инициализированные клиентской программой, не должны переопределяться.
- Установить
LayoutManagerна компоненте, если необходимо. - Создать/добавить необходимые подкомпоненты в компонент.
- Создать/установить обработчики событий на компоненте.
- Создать/установить
PropertyChangeListenerна компоненте для правильного обнаружения и реагирования на изменения свойств компонента. - Установить интерфейс клавиатуры (мнемоники, перемещение по элементам и т. д.) на компоненте.
- Инициализировать любые необходимые данные экземпляра.
- Переопределяет:
-
installUIв классеComponentUI - Параметры:
-
c- компонент, в котором устанавливается этот делегат UI - См. также:
-
ComponentUI.uninstallUI(javax.swing.JComponent),JComponent.setUI(javax.swing.plaf.ComponentUI),JComponent.updateUI()
удалитьИнтерфейс
public void uninstallUI(JComponent c)
Описание скопировано из класса: ComponentUI
Отменяет конфигурацию, которая была выполнена на указанном компоненте во время installUI. Этот метод вызывается, когда этот экземпляр UIComponent удаляется как делегат UI для указанного компонента. Этот метод должен отменить конфигурацию, выполненную в installUI, тщательно оставляя экземпляр JComponent в чистом состоянии (без лишних слушателей, специфичных для внешнего вида объектов свойств и т. д.). Это должно включать следующее:
- Удалить все установленные внешним видом границы из компонента.
- Удалить все установленные внешним видом менеджеры компоновки из компонента.
- Удалить все добавленные внешним видом подкомпоненты из компонента.
- Удалить все добавленные внешним видом слушатели событий/свойств из компонента.
- Удалить все установленные внешним видом интерфейсы клавиатуры из компонента.
- Сделать нулевыми все выделенные объекты данных экземпляра, чтобы разрешить сборку мусора.
- Переопределяет:
-
uninstallUIв классеComponentUI - Параметры:
-
c- компонент, из которого удаляется этот делегат UI; этот аргумент часто игнорируется, но может использоваться, если объект UI бессостоятелен и используется несколькими компонентами - См. также:
-
ComponentUI.installUI(javax.swing.JComponent),JComponent.updateUI()
установитьЗначенияПоУмолчанию
protected void installDefaults()
установитьКомпоненты
protected void installComponents()
удалитьКомпоненты
protected void uninstallComponents()
установитьСлушателей
protected void installListeners()
установитьДействияКлавиатуры
protected void installKeyboardActions()
удалитьДействияКлавиатуры
protected void uninstallKeyboardActions()
удалитьСлушателей
protected void uninstallListeners()
удалитьЗначенияПоУмолчанию
protected void uninstallDefaults()
создатьСлушательДорожки
protected BasicScrollBarUI.TrackListener createTrackListener()
создатьСлушательКнопокСтрелок
protected BasicScrollBarUI.ArrowButtonListener createArrowButtonListener()
создатьСлушательМодели
protected BasicScrollBarUI.ModelListener createModelListener()
создатьСлушательПрокрутки
protected BasicScrollBarUI.ScrollListener createScrollListener()
создатьСлушательИзмененийСвойств
protected PropertyChangeListener createPropertyChangeListener()
установитьПереходПолзунка
protected void setThumbRollover(boolean active)
Устанавливает, находится ли мышь над ползунком.
- Параметры:
-
active- true, если ползунок активен. - С:
- 1.5
являетсяЛиПолзунокАктивным
public boolean isThumbRollover()
Возвращает true, если мышь находится над ползунком.
- Возвращает:
- true, если ползунок активен
- С:
- 1.5
рисовать
public void paint(Graphics g,
JComponent c) Описание скопировано из класса: ComponentUI
Рисует указанный компонент соответствующим образом для внешнего вида. Этот метод вызывается из метода ComponentUI.update при отрисовке указанного компонента. Подклассы должны переопределять этот метод и использовать указанный объект Graphics для отрисовки содержимого компонента.
- Переопределяет:
-
paintв классеComponentUI - Параметры:
-
g- контекст рисования -
c- компонент, который отрисовывается; этот аргумент часто игнорируется, но может использоваться, если объект UI бессостоятелен и используется несколькими компонентами - См. также:
ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)
получитьПредпочтительныйРазмер
public Dimension getPreferredSize(JComponent c)
Предпочтительная ширина вертикального скроллбара — это максимальная из предпочтительных ширин кнопок увеличения/уменьшения (не null) и минимальной ширины ползунка. Предпочтительная высота — это сумма предпочтительных высот тех же элементов. Основа предпочтительного размера горизонтального скроллбара аналогична.
Предпочтительный размер вычисляется только один раз; последующие вызовы этого метода просто возвращают кэшированный размер.
- Переопределяет:
-
getPreferredSizeв классеComponentUI - Параметры:
-
c- компонент, делегирующий этот метод - Возвращает:
- предпочтительный размер Basic JScrollBar
- См. также:
-
getMaximumSize(javax.swing.JComponent),ComponentUI.getMinimumSize(javax.swing.JComponent)
получитьМаксимальныйРазмер
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)
создатьКнопкуУменьшения
protected JButton createDecreaseButton(int orientation)
создатьКнопкуУвеличения
protected JButton createIncreaseButton(int orientation)
рисоватьВыделениеУменьшения
protected void paintDecreaseHighlight(Graphics g)
рисоватьВыделениеУвеличения
protected void paintIncreaseHighlight(Graphics g)
paintTrack
protected void paintTrack(Graphics g,
JComponent c,
Rectangle trackBounds) paintThumb
protected void paintThumb(Graphics g,
JComponent c,
Rectangle thumbBounds) getМинимальныйРазмерПолзунка
protected Dimension getMinimumThumbSize()
Возвращает наименьший приемлемый размер ползунка. Если полоса прокрутки становится настолько маленькой, что этот размер недоступен, ползунок будет скрыт.
Предупреждение: значение, возвращаемое этим методом, не должно изменяться, это общая статическая константа.
- Возвращает:
- Наименьший приемлемый размер ползунка.
- См. также:
getMaximumThumbSize()
getМаксимальныйРазмерПолзунка
protected Dimension getMaximumThumbSize()
Возвращает наибольший приемлемый размер ползунка. Чтобы создать ползунок фиксированного размера, необходимо использовать этот метод и getMinimumThumbSize возвращают одно и то же значение.
Предупреждение: значение, возвращаемое этим методом, не должно изменяться, это общая статическая константа.
- Возвращает:
- Наибольший приемлемый размер ползунка.
- См. также:
getMinimumThumbSize()
addLayoutComponent
public void addLayoutComponent(String name,
Component child) Описание скопировано из интерфейса: LayoutManager
Если менеджер компоновки использует строку для каждого компонента, добавляет компонент comp в компоновку, связывая его со строкой, указанной в name.
- Определено в:
-
addLayoutComponentв интерфейсеLayoutManager - Параметры:
-
name- строка, которая должна быть связана с компонентом -
child- компонент, который нужно добавить
removeLayoutComponent
public void removeLayoutComponent(Component child)
Описание скопировано из интерфейса: LayoutManager
Удаляет указанный компонент из компоновки.
- Определено в:
-
removeLayoutComponentв интерфейсеLayoutManager - Параметры:
-
child- компонент, который нужно удалить
preferredLayoutSize
public Dimension preferredLayoutSize(Container scrollbarContainer)
Описание скопировано из интерфейса: LayoutManager
Вычисляет предпочтительные размеры для указанного контейнера, учитывая содержащиеся в нем компоненты.
- Определено в:
-
preferredLayoutSizeв интерфейсеLayoutManager - Параметры:
-
scrollbarContainer- контейнер, который необходимо компоновать - См. также:
LayoutManager.minimumLayoutSize(java.awt.Container)
minimumLayoutSize
public Dimension minimumLayoutSize(Container scrollbarContainer)
Описание скопировано из интерфейса: LayoutManager
Вычисляет минимальные размеры для указанного контейнера, учитывая содержащиеся в нем компоненты.
- Определено в:
-
minimumLayoutSizeв интерфейсеLayoutManager - Параметры:
-
scrollbarContainer- компонент, который необходимо компоновать - См. также:
LayoutManager.preferredLayoutSize(java.awt.Container)
layoutVScrollbar
protected void layoutVScrollbar(JScrollBar sb)
layoutHScrollbar
protected void layoutHScrollbar(JScrollBar sb)
layoutContainer
public void layoutContainer(Container scrollbarContainer)
Описание скопировано из интерфейса: LayoutManager
Компонует указанный контейнер.
- Определено в:
-
layoutContainerв интерфейсеLayoutManager - Параметры:
-
scrollbarContainer- контейнер, который необходимо компоновать
setThumbBounds
protected void setThumbBounds(int x,
int y,
int width,
int height) Устанавливает границы ползунка и принудительно перерисовывает, включая старые и новые границы ползунка.
- См. также:
getThumbBounds()
getГраницыПолзунка
protected Rectangle getThumbBounds()
Возвращает текущий размер/позицию ползунка.
Предупреждение: значение, возвращаемое этим методом, не должно изменяться, это ссылка на фактический прямоугольник, а не копия.
- Возвращает:
- Текущий размер/позицию ползунка.
- См. также:
setThumbBounds(int, int, int, int)
getГраницыОбластиПрокрутки
protected Rectangle getTrackBounds()
Возвращает текущие границы области прокрутки, т. е. пространство между кнопками увеличения и уменьшения, за вычетом отступов. Возвращаемое этим методом значение обновляется каждый раз, когда полоса прокрутки компонуется (валидируется).
Предупреждение: значение, возвращаемое этим методом, не должно изменяться, это ссылка на фактический прямоугольник, а не копия.
- Возвращает:
- Текущие границы области прокрутки
- См. также:
layoutContainer(java.awt.Container)
scrollByBlock
protected void scrollByBlock(int direction)
scrollByUnit
protected void scrollByUnit(int direction)
getПоддерживаетАбсолютноеПозиционирование
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.