Класс BasicProgressBarUI
java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.ProgressBarUI
javax.swing.plaf.basic.BasicProgressBarUI
- Прямые известные подклассы:
MetalProgressBarUI, SynthProgressBarUI
public class BasicProgressBarUI extends ProgressBarUI
Базовая реализация ProgressBarUI для L&F.
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
class |
BasicProgressBarUI.ChangeHandler |
Этот класс следует рассматривать как вложенный класс с модификатором доступа «protected». |
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Rectangle |
boxRect |
Используется для хранения положения и размера подпрыгивающего прямоугольника (возвращаемого методом getBox), который будет отрисован. |
protected ChangeListener |
changeListener |
Экземпляр ChangeListener. |
protected JProgressBar |
progressBar |
Экземпляр JProgressBar. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
BasicProgressBarUI() |
Создает BasicProgressBarUI. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static ComponentUI |
createUI |
Возвращает новый экземпляр BasicProgressBarUI. |
protected int |
getAmountFull |
Определяет, какая часть индикатора выполнения должна быть заполнена, исходя из процента выполнения, полученного из модели. |
protected int |
getAnimationIndex() |
Возвращает индекс текущего кадра анимации. |
int |
getBaseline |
Возвращает базовую линию. |
Component.BaselineResizeBehavior |
getBaselineResizeBehavior |
Возвращает перечисление, указывающее, как меняется базовая линия компонента при изменении его размера. |
protected Rectangle |
getBox |
Сохраняет положение и размер подпрыгивающего прямоугольника, который будет отрисован для текущего индекса анимации, в r и возвращает r. |
protected int |
getBoxLength |
Возвращает длину отрисовываемого «подпрыгивающего прямоугольника». |
protected int |
getCellLength() |
Возвращает ширину (если HORIZONTAL) или высоту (если VERTICAL) каждой отдельной ячейки/единицы, отображаемой в индикаторе выполнения. |
protected int |
getCellSpacing() |
Возвращает расстояние между ячейками/единицами индикатора выполнения. |
protected final int |
getFrameCount() |
Возвращает количество кадров в полном цикле анимации, используемом неопределенным индикатором JProgressBar. |
Dimension |
getMinimumSize |
Минимальный размер этого компонента равен 10. |
protected Dimension |
getPreferredInnerHorizontal() |
Возвращает предпочтительный размер горизонтального JProgressBar. |
protected Dimension |
getPreferredInnerVertical() |
Возвращает предпочтительный размер вертикального JProgressBar. |
protected Color |
getSelectionBackground() |
«selectionBackground» — это цвет текста, когда он отображается на незаполненной области индикатора выполнения. |
protected Color |
getSelectionForeground() |
«selectionForeground» — это цвет текста, когда он отображается на заполненной области индикатора выполнения. |
protected Point |
getStringPlacement |
Задает место, где будет отображаться строка состояния выполнения. |
protected void |
incrementAnimationIndex() |
Устанавливает индекс текущего кадра анимации в следующее допустимое значение, в результате чего индикатор выполнения перерисовывается. |
protected void |
installDefaults() |
Устанавливает свойства по умолчанию. |
protected void |
installListeners() |
Регистрирует слушателей. |
void |
paint |
Передает отрисовку одному из двух методов: paintDeterminate или paintIndeterminate. |
protected void |
paintDeterminate |
Универсальный метод отрисовки, который подходит практически для всех линейных индикаторов выполнения с определенным значением. |
protected void |
paintIndeterminate |
Универсальный метод отрисовки, который подходит для всех линейных индикаторов выполнения с подпрыгивающим прямоугольником. |
protected void |
paintString |
Отрисовывает строку состояния выполнения. |
protected void |
setAnimationIndex |
Устанавливает индекс текущего кадра анимации в указанное значение и запрашивает перерисовку индикатора выполнения. |
protected void |
setCellLength |
Устанавливает длину ячейки. |
protected void |
setCellSpacing |
Устанавливает интервал между ячейками. |
protected void |
startAnimationTimer() |
Запускает поток анимации, при необходимости создавая и инициализируя его. |
protected void |
stopAnimationTimer() |
Останавливает поток анимации. |
protected void |
uninstallDefaults() |
Удаляет свойства по умолчанию. |
protected void |
uninstallListeners() |
Удаляет всех слушателей, зарегистрированных этим объектом. |
Методы, объявленные в классе ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getMaximumSize, getPreferredSize, installUI, uninstallUI, update
Подробное описание полей
progressBar
protected JProgressBar progressBar
Экземпляр
JProgressBar.changeListener
protected ChangeListener changeListener
Экземпляр
ChangeListener.boxRect
protected Rectangle boxRect
Используется для хранения положения и размера перемещающегося блока (возвращается методом getBox), который будет нарисован.
- С версии:
- 1.5
Подробное описание конструкторов
BasicProgressBarUI
public BasicProgressBarUI()
Создает экземпляр
BasicProgressBarUI.Подробное описание методов
createUI
public static ComponentUI createUI(JComponent x)
Возвращает новый экземпляр
BasicProgressBarUI.- Параметры:
-
x— компонент - Возвращает:
- новый экземпляр
BasicProgressBarUI
installDefaults
protected void installDefaults()
Устанавливает свойства по умолчанию.
uninstallDefaults
protected void uninstallDefaults()
Удаляет свойства по умолчанию.
installListeners
protected void installListeners()
Регистрирует слушатели.
startAnimationTimer
protected void startAnimationTimer()
Запускает поток анимации, создавая и инициализируя его при необходимости. Этот метод вызывается, когда должна начаться анимация индикатора выполнения с неопределенным прогрессом. К возможным причинам относятся:
- Индикатор выполнения имеет определенный прогресс и становится отображаемым
- Индикатор выполнения отображается и получает определенный прогресс
- Индикатор выполнения отображается и имеет определенный прогресс, а данный UI устанавливается
- С версии:
- 1.4
- См. также:
stopAnimationTimer
protected void stopAnimationTimer()
Останавливает поток анимации. Этот метод вызывается, когда анимацию с неопределенным прогрессом необходимо остановить. К возможным причинам относятся:
- Индикатор выполнения переключается на определенный прогресс
- Индикатор выполнения перестает входить в отображаемую иерархию
- Данный UI удаляется
- С версии:
- 1.4
- См. также:
uninstallListeners
protected void uninstallListeners()
Удаляет все слушатели, установленные этим объектом.
getBaseline
public int getBaseline(JComponent c, int width, int height)
Возвращает базовую линию.
- Переопределяет:
-
getBaselineв классеComponentUI - Параметры:
-
c—JComponent, для которого запрашивается базовая линия -
width— ширина, для которой нужно получить базовую линию -
height— высота, для которой нужно получить базовую линию - Возвращает:
- базовую линию или значение < 0, указывающее на отсутствие подходящей базовой линии
- Исключения:
-
NullPointerException— еслиcимеет значениеnull -
IllegalArgumentException— если ширина или высота < 0 - С версии:
- 1.6
- См. также:
getBaselineResizeBehavior
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
Возвращает перечисление, указывающее, как изменяется базовая линия компонента при изменении его размера.
- Переопределяет:
-
getBaselineResizeBehaviorв классеComponentUI - Параметры:
-
c—JComponent, для которого возвращается поведение базовой линии при изменении размера - Возвращает:
- перечисление, указывающее, как изменяется базовая линия при изменении размера компонента
- Исключения:
-
NullPointerException— еслиcимеет значениеnull - С версии:
- 1.6
- См. также:
getPreferredInnerHorizontal
protected Dimension getPreferredInnerHorizontal()
Возвращает предпочтительный размер горизонтального
JProgressBar.- Возвращает:
- предпочтительный размер горизонтального
JProgressBar
getPreferredInnerVertical
protected Dimension getPreferredInnerVertical()
Возвращает предпочтительный размер вертикального
JProgressBar.- Возвращает:
- предпочтительный размер вертикального
JProgressBar
getSelectionForeground
protected Color getSelectionForeground()
«selectionForeground» — это цвет текста, когда он рисуется поверх заполненной области индикатора выполнения.
- Возвращает:
- цвет выделенного переднего плана
getSelectionBackground
protected Color getSelectionBackground()
«selectionBackground» — это цвет текста, когда он рисуется поверх незаполненной области индикатора выполнения.
- Возвращает:
- цвет выделенного фона
getCellLength
protected int getCellLength()
Возвращает ширину (если ориентация HORIZONTAL) или высоту (если ориентация VERTICAL) каждой отдельной ячейки/единицы, отображаемой в индикаторе выполнения. Однако для упрощения отображения текста и улучшения внешнего вида эта функция возвращает 1, когда отображается строка прогресса.
- Возвращает:
- значение, обозначающее расстояние между ячейками
- См. также:
setCellLength
protected void setCellLength(int cellLen)
Задает длину ячейки.
- Параметры:
-
cellLen— новая длина ячейки
getCellSpacing
protected int getCellSpacing()
Возвращает расстояние между ячейками/единицами индикатора выполнения. Однако для упрощения отображения текста и улучшения внешнего вида эта функция возвращает 0, когда отображается строка прогресса.
- Возвращает:
- значение, обозначающее расстояние между ячейками
- См. также:
setCellSpacing
protected void setCellSpacing(int cellSpace)
Задает расстояние между ячейками.
- Параметры:
-
cellSpace— новое расстояние между ячейками
getAmountFull
protected int getAmountFull(Insets b, int width, int height)
Определяет, какая часть индикатора выполнения должна быть заполнена, исходя из процента выполнения, полученного из модели. Эта часто выполняемая операция вынесена в отдельный метод. Предполагается, что индикатор выполнения имеет линейную форму. То есть, если вы создаете круговой индикатор выполнения, необходимо переопределить этот метод.
- Параметры:
-
b— внутренние отступы -
width— ширина -
height— высота - Возвращает:
- часть индикатора выполнения, которая должна быть заполнена
paint
public void paint(Graphics g, JComponent c)
Передает отрисовку одному из двух методов: paintDeterminate или paintIndeterminate.
- Переопределяет:
-
paintв классеComponentUI - Параметры:
-
g— контекстGraphics, в котором выполняется отрисовка -
c— отрисовываемый компонент; этот аргумент часто игнорируется, но может использоваться, если объект UI не содержит состояния и совместно используется несколькими компонентами - См. также:
getBox
protected Rectangle getBox(Rectangle r)
Сохраняет положение и размер перемещающегося блока, который будет нарисован для текущего индекса анимации, в
r и возвращает r. Подклассы, дополняющие отрисовку, выполняемую реализацией paintIndeterminate в этом классе, например, рисуя контур вокруг перемещающегося блока, могут использовать этот метод, чтобы получить положение только что нарисованного блока. Переопределив этот метод, вы полностью управляете размером и положением перемещающегося блока, не переimplementируя paintIndeterminate.- Параметры:
-
r— экземпляр Rectangle, который будет изменен; может бытьnull - Возвращает:
-
null, если блок не нужно рисовать; в противном случае возвращает переданный прямоугольник (если он не равен null) или новый прямоугольник - С версии:
- 1.4
- См. также:
getBoxLength
protected int getBoxLength(int availableLength, int otherDimension)
Возвращает длину «перемещающегося блока», который будет нарисован. Этот метод вызывается реализацией
paintIndeterminate по умолчанию для получения ширины (если индикатор выполнения горизонтальный) или высоты (если вертикальный) блока. Например:
boxRect.width = getBoxLength(componentInnards.width,
componentInnards.height);
- Параметры:
-
availableLength— пространство, доступное для перемещения блока; например, для горизонтального индикатора выполнения это должна быть внутренняя ширина индикатора (ширина компонента за вычетом границ) -
otherDimension— для горизонтального индикатора выполнения это должна быть внутренняя высота индикатора; это значение может использоваться для ограничения или определения возвращаемого значения - Возвращает:
- размер определяемого измерения блока; не должен превышать
availableLength - С версии:
- 1.5
- См. также:
paintIndeterminate
protected void paintIndeterminate(Graphics g, JComponent c)
Универсальный метод отрисовки, который должен корректно работать со всеми линейными индикаторами выполнения с перемещающимся блоком. Переопределите его, если создаете другой тип индикатора выполнения.
- Параметры:
-
g— экземплярGraphics -
c— компонент - С версии:
- 1.4
- См. также:
paintDeterminate
protected void paintDeterminate(Graphics g, JComponent c)
Универсальный метод отрисовки, который должен корректно работать почти со всеми линейными индикаторами выполнения с определенным прогрессом. Достаточно задать несколько значений в таблице параметров по умолчанию, и индикатор выполнения будет отрисовываться правильно. Разумеется, переопределите этот метод, если создаете круговой или полукруговой индикатор выполнения.
- Параметры:
-
g— экземплярGraphics -
c— компонент - С версии:
- 1.4
- См. также:
paintString
protected void paintString(Graphics g, int x, int y, int width, int height, int amountFull, Insets b)
Рисует строку состояния выполнения.
- Параметры:
-
g— экземплярGraphics -
x— координата X ограничивающего прямоугольника -
y— координата Y ограничивающего прямоугольника -
width— ширина ограничивающего прямоугольника -
height— высота ограничивающего прямоугольника -
amountFull— размер области заполнения: ширина или высота в зависимости от ориентации. -
b— внутренние отступы индикатора выполнения.
getStringPlacement
protected Point getStringPlacement(Graphics g, String progressString, int x, int y, int width, int height)
Определяет место, где будет нарисована строка состояния выполнения. В этой реализации она располагается по центру индикатора выполнения (по обеим координатам x и y). Переопределите этот метод, если нужно выровнять строку состояния выполнения по правому или левому краю, сверху или снизу, либо сместить её по какой-либо причине.
- Параметры:
-
g— экземплярGraphics -
progressString— текст -
x— координата X -
y— координата Y -
width— ширина -
height— высота - Возвращает:
- место, где будет нарисована строка состояния выполнения
getMinimumSize
public Dimension getMinimumSize(JComponent c)
Минимальный размер этого компонента — 10. Это обусловлено тем, что на каждые 10 процентов должен приходиться как минимум один пиксель.
- Переопределяет:
-
getMinimumSizeв классеComponentUI - Параметры:
-
c— компонент, минимальный размер которого запрашивается; этот аргумент часто игнорируется, но может использоваться, если объект UI не имеет состояния и совместно используется несколькими компонентами - Возвращает:
- объект
Dimensionилиnull - См. также:
getAnimationIndex
protected int getAnimationIndex()
Возвращает индекс текущего кадра анимации.
- Возвращает:
- индекс текущего кадра анимации
- С версии:
- 1.4
getFrameCount
protected final int getFrameCount()
Возвращает количество кадров полного цикла анимации, используемого неопределённым индикатором выполнения JProgressBar. В течение полного цикла индикатор перемещается от одного края к другому и обратно. Другие подклассы в других вариантах оформления могут изменять это визуальное поведение.
- Возвращает:
- количество кадров
- С версии:
- 1.6
setAnimationIndex
protected void setAnimationIndex(int newValue)
Устанавливает индекс текущего кадра анимации в указанное значение и запрашивает перерисовку индикатора выполнения. Подклассам, не использующим код отрисовки по умолчанию, может понадобиться переопределить этот метод, чтобы изменить способ вызова метода
repaint.- Параметры:
-
newValue— новый индекс анимации; его значение не проверяется - С версии:
- 1.4
- См. также:
incrementAnimationIndex
protected void incrementAnimationIndex()
Устанавливает индекс текущего кадра анимации в следующее допустимое значение, в результате чего индикатор выполнения перерисовывается. По умолчанию следующим допустимым значением является текущий индекс анимации плюс один. Если новое значение слишком велико, этот метод устанавливает индекс в 0. Подклассам может понадобиться переопределить этот метод, чтобы индекс не превышал количество кадров, необходимых для конкретного экземпляра индикатора выполнения. Этот метод вызывается потоком анимации по умолчанию каждые X миллисекунд, где X задаётся параметром интерфейса пользователя "ProgressBar.repaintInterval".
- С версии:
- 1.4
- См. также:
© 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/plaf/basic/BasicProgressBarUI.html