Класс 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 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 | Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
contains |
Возвращает true, если указанное положение x,y находится внутри формы, заданной оформлением для указанного компонента. |
Accessible |
getAccessibleChild |
Возвращает i-го дочернего элемента объекта с индексом Accessible. |
int |
getAccessibleChildrenCount |
Возвращает количество доступных дочерних элементов объекта. |
Dimension |
getMaximumSize |
Возвращает максимальный размер указанного компонента, соответствующий оформлению. |
Dimension |
getPreferredSize |
Возвращает предпочтительный размер указанного компонента, соответствующий оформлению. |
void |
installUI |
Настраивает указанный компонент в соответствии с оформлением. |
void |
uninstallUI |
Отменяет настройку указанного компонента, выполненную во время installUI. |
void |
update |
Уведомляет этот делегат пользовательского интерфейса о том, что пора отрисовать указанный компонент. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt либо до истечения определённого промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ждать пробуждения, обычно в результате вызова notify или interrupt либо до истечения определённого промежутка реального времени. |
Подробное описание полей
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 этого класса — например, для рисования контура вокруг подпрыгивающего прямоугольника, — могут использовать этот метод, чтобы получить расположение только что отрисованного прямоугольника. Переопределив этот метод, можно полностью управлять размером и положением подпрыгивающего прямоугольника, не переопределяя 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 с неопределённым значением. Во время полного цикла индикатор прогресса перемещается от одного края к другому и обратно. Подклассы в других Look and Feel могут изменять это визуальное поведение.
- Возвращает:
- количество кадров
- Начиная с:
- 1.6
setAnimationIndex
protected void setAnimationIndex(int newValue)
Задаёт указанный индекс текущего кадра анимации и запрашивает перерисовку индикатора выполнения. Подклассам, не использующим код отрисовки по умолчанию, может потребоваться переопределить этот метод, чтобы изменить способ вызова метода
repaint.- Параметры:
-
newValue— новый индекс анимации; проверка его значения не выполняется - Начиная с:
- 1.4
- См. также:
incrementAnimationIndex
protected void incrementAnimationIndex()
Задаёт индекс текущего кадра анимации, переходя к следующему допустимому значению, в результате чего индикатор выполнения перерисовывается. По умолчанию следующее допустимое значение — это текущий индекс анимации плюс один. Если новое значение окажется слишком большим, этот метод задаёт индекс 0. Подклассам может потребоваться переопределить этот метод, чтобы индекс не превышал количество кадров, необходимое для конкретного экземпляра индикатора выполнения. Этот метод вызывается потоком анимации по умолчанию каждые X миллисекунд, где X задаётся параметром UI по умолчанию «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.