Spec-Zone.ru › OpenJDK 21

Класс 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 для базовой темы.

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

Модификатор и тип Класс Описание
class  BasicProgressBarUI.ChangeHandler
Этот класс следует рассматривать как "защищённый" вложенный класс.

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

Модификатор и тип Поле Описание
protected Rectangle boxRect
Содержит координаты и размеры прямоугольника, подлежащего отрисовке (возвращается методом getBox).
protected ChangeListener changeListener
Экземпляр ChangeListener.
protected JProgressBar progressBar
Экземпляр JProgressBar.

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

Конструктор Описание
BasicProgressBarUI()
Создаёт BasicProgressBarUI.

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

Модификатор и тип Метод Описание
static ComponentUI createUI(JComponent x)
Возвращает новый экземпляр BasicProgressBarUI.
protected int getAmountFull(Insets b, int width, int height)
Определяет заполненную часть прогресс-бара, исходя из процента выполнения, полученного от модели.
protected int getAnimationIndex()
Возвращает индекс текущей кадра анимации.
int getBaseline(JComponent c, int width, int height)
Возвращает линию основания.
Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
Возвращает перечисление, указывающее, как изменяется линия основания компонента при изменении размера.
protected Rectangle getBox(Rectangle r)
Сохраняет позицию и размеры прямоугольника, который будет нарисован для текущего индекса анимации в r и возвращает r.
protected int getBoxLength(int availableLength, int otherDimension)
Возвращает длину "прямоугольника анимации" для отрисовки.
protected int getCellLength()
Возвращает ширину (если ГОРИЗОНТАЛЬНО) или высоту (если ВЕРТИКАЛЬНО) каждого из отдельных ячеек/единиц, подлежащих отрисовке в прогресс-баре.
protected int getCellSpacing()
Возвращает интервал между каждой из ячеек/единиц в прогресс-баре.
protected final int getFrameCount()
Возвращает количество кадров для полного цикла анимации, используемого не определяемым JProgessBar.
Dimension getMinimumSize(JComponent c)
Минимальный размер для этого компонента — 10.
protected Dimension getPreferredInnerHorizontal()
Возвращает предпочтительный размер горизонтального JProgressBar.
protected Dimension getPreferredInnerVertical()
Возвращает предпочтительный размер вертикального JProgressBar.
protected Color getSelectionBackground()
«selectionBackground» — цвет текста при отрисовке поверх незаполненной области прогресс-бара.
protected Color getSelectionForeground()
«selectionForeground» — цвет текста при отрисовке поверх заполненной области прогресс-бара.
protected Point getStringPlacement(Graphics g, String progressString, int x, int y, int width, int height)
Указывает место, где будет нарисован строка прогресса.
protected void incrementAnimationIndex()
Устанавливает индекс текущего кадра анимации на следующее допустимое значение, что приводит к перерисовке прогресс-бара.
protected void installDefaults()
Устанавливает значения по умолчанию.
protected void installListeners()
Регистрирует слушателей.
void paint(Graphics g, JComponent c)
Делегирует отрисовку одному из двух методов: paintDeterminate или paintIndeterminate.
protected void paintDeterminate(Graphics g, JComponent c)
Метод отрисовки общего назначения, который должен действовать правильно для почти всех линейных, определённых прогресс-баров.
protected void paintIndeterminate(Graphics g, JComponent c)
Метод отрисовки общего назначения, который должен действовать правильно для всех линейных прогресс-баров с анимирующимся прямоугольником.
protected void paintString(Graphics g, int x, int y, int width, int height, int amountFull, Insets b)
Отрисовывает строку прогресса.
protected void setAnimationIndex(int newValue)
Устанавливает индекс текущего кадра анимации на указанное значение и запрашивает перерисовку прогресс-бара.
protected void setCellLength(int cellLen)
Устанавливает длину ячейки.
protected void setCellSpacing(int cellSpace)
Устанавливает интервал между ячейками.
protected void startAnimationTimer()
Запускает поток анимации, создавая и инициализируя его при необходимости.
protected void stopAnimationTimer()
Останавливает поток анимации.
protected void uninstallDefaults()
Удаляет свойства по умолчанию.
protected void uninstallListeners()
Удаляет всех слушателей, установленных этим объектом.

Методы, объявленные в классе javax.swing.plaf.ComponentUI

contains, getAccessibleChild, getAccessibleChildrenCount, getMaximumSize, getPreferredSize, installUI, uninstallUI, update

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

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()

stopAnimationTimer

protected void stopAnimationTimer()
Останавливает поток анимации. Этот метод вызывается, когда анимация неопределённой длительности должна быть остановлена. Причины могут включать:
  • Полоса прогресса меняется на определённой длительности
  • Полоса прогресса больше не является частью отображаемой иерархии
  • Этот UI отменён
Если вы реализуете свой собственный поток анимации, вы должны переопределить этот метод.
С:
1.4
См. также:
  • startAnimationTimer()

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
См. также:
  • JComponent.getBaseline(int, int)

getBaselineResizeBehavior

public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
Возвращает перечисление, указывающее, как базовая линия компонента изменяется при изменении размера.
Переопределяет:
getBaselineResizeBehavior в классе ComponentUI
Параметры:
c - JComponent для возврата поведения изменения базовой линии
Возвращает:
перечисление, указывающее, как изменяется базовая линия при изменении размера компонента
Исключение:
NullPointerException - если c равно null
С:
1.6
См. также:
  • JComponent.getBaseline(int, int)

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()
Возвращает ширину (если ГОРИЗОНТАЛЬНО) или высоту (если ВЕРТИКАЛЬНО) каждого отдельного ячейки/блока для отрисовки в полосе прогресса. Однако для упрощения отрисовки текста и эстетических соображений эта функция возвращает 1, когда отрисовывается строка прогресса.
Возвращает:
значение, представляющее интервал между ячейками
См. также:
  • setCellLength(int)
  • JProgressBar.isStringPainted()

setCellLength

protected void setCellLength(int cellLen)
Устанавливает длину ячейки.
Параметры:
cellLen - новая длина ячейки

getCellSpacing

protected int getCellSpacing()
Возвращает интервал между каждой из ячеек/блоков в полосе прогресса. Однако для упрощения отрисовки текста и эстетических соображений эта функция возвращает 0, когда отрисовывается строка прогресса.
Возвращает:
значение, представляющее интервал между ячейками
См. также:
  • setCellSpacing(int)
  • JProgressBar.isStringPainted()

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 - контекст отрисовки
c - компонент, который отрисовывается; этот аргумент часто игнорируется, но может быть использован, если объект UI является бессостоятельным и используется несколькими компонентами
См. также:
  • ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)

getBox

protected Rectangle getBox(Rectangle r)
Хранит положение и размер прыгающего прямоугольника, который будет отрисовываться для текущего индекса анимации в r и возвращает r. Подклассы, добавляющие к отрисовке, выполненной в реализации этого класса paintIndeterminate (например, для рисования контура вокруг прыгающего прямоугольника), могут использовать этот метод для получения местоположения прыгающего прямоугольника, который был только что отрисован. Переопределив этот метод, вы получаете полный контроль над размером и положением прыгающего прямоугольника без необходимости переписывать paintIndeterminate.
Параметры:
r - экземпляр Rectangle для изменения; может быть null
Возвращает:
null если прямоугольник не должен быть нарисован; в противном случае возвращает переданный прямоугольник (если он не null) или новый прямоугольник
С:
1.4
См. также:
  • setAnimationIndex(int)

getBoxLength

protected int getBoxLength(int availableLength, int otherDimension)
Возвращает длину «прямоугольника анимации», который будет нарисован. Этот метод вызывается реализацией по умолчанию paintIndeterminate для получения ширины (если полоса прогресса горизонтальная) или высоты (если вертикальная) прямоугольника. Например:
boxRect.width = getBoxLength(componentInnards.width,
                             componentInnards.height);
 
Параметры:
availableLength - количество места, доступного для перемещения прямоугольника анимации; для горизонтальной полосы прогресса, например, это должна быть внутренняя ширина полосы прогресса (ширина компонента минус границы)
otherDimension - для горизонтальной полосы прогресса, это должна быть внутренняя высота полосы прогресса; это значение может использоваться для ограничения или определения возвращаемого значения
Возвращает:
размер определяемой размерности прямоугольника; не должно быть больше availableLength
С:
1.5
См. также:
  • SwingUtilities.calculateInnerArea(javax.swing.JComponent, java.awt.Rectangle)

paintIndeterminate

protected void paintIndeterminate(Graphics g, JComponent c)
Метод рисования общего назначения, который должен правильно работать со всеми линейными полосами прогресса с анимацией прямоугольника. Переопределите этот метод, если вы создаёте другой вид полосы прогресса.
Параметры:
g - экземпляр Graphics
c - компонент
С:
1.4
См. также:
  • paintDeterminate(java.awt.Graphics, javax.swing.JComponent)

paintDeterminate

protected void paintDeterminate(Graphics g, JComponent c)
Метод рисования общего назначения, который должен правильно работать практически со всеми линейными, детерминированными полосами прогресса. Установив несколько значений в таблице по умолчанию, всё должно работать нормально для рисования вашей полосы прогресса. Естественно, переопределите этот метод, если вы создаёте круговую или полукруговую полосу прогресса.
Параметры:
g - экземпляр Graphics
c - компонент
С:
1.4
См. также:
  • paintIndeterminate(java.awt.Graphics, javax.swing.JComponent)

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)
Определяет место, где будет нарисована строка прогресса. Эта реализация размещает её в центре полосы прогресса (по обеим координатам). Переопределите этот метод, если необходимо выравнивать строку прогресса по правому, левому краю, верху или низу, или если требуется её смещение.
Параметры:
g - экземпляр Graphics
progressString - текст
x - координата X
y - координата Y
width - ширина
height - высота
Возвращает:
место, куда будет нарисована строка прогресса

getMinimumSize

public Dimension getMinimumSize(JComponent c)
Минимальный размер для этого компонента составляет 10. Обоснование состоит в том, что должно быть не менее одного пикселя на 10 процентов.
Переопределяет:
getMinimumSize в классе ComponentUI
Параметры:
c - компонент, минимальный размер которого запрашивается; этот аргумент часто игнорируется, но может быть использован, если объект UI является бессостоятельным и используется несколькими компонентами
Возвращает:
объект Dimension или null
См. также:
  • JComponent.getMinimumSize()
  • LayoutManager.minimumLayoutSize(java.awt.Container)
  • ComponentUI.getPreferredSize(javax.swing.JComponent)

getAnimationIndex

protected int getAnimationIndex()
Получает индекс текущей кадра анимации.
Возвращает:
индекс текущей кадра анимации
С:
1.4

getFrameCount

protected final int getFrameCount()
Возвращает количество кадров для полного цикла анимации, используемой недетерминированной JProgessBar. Часть прогресса будет перемещаться с одного конца на другой и обратно во время всего цикла. Это визуальное поведение может быть изменено подклассами в других Look and Feels.
Возвращает:
количество кадров
С:
1.6

setAnimationIndex

protected void setAnimationIndex(int newValue)
Устанавливает индекс текущего кадра анимации на указанное значение и запрашивает перерисовку полосы прогресса. Подклассы, не использующие стандартный код рисования, могут потребоваться переопределить этот метод, чтобы изменить способ вызова метода repaint.
Параметры:
newValue - новый индекс анимации; проверка его значения не выполняется
С:
1.4
См. также:
  • incrementAnimationIndex()

incrementAnimationIndex

protected void incrementAnimationIndex()
Устанавливает индекс текущего кадра анимации на следующее допустимое значение, что приводит к перерисовке полосы прогресса. Следующее допустимое значение, по умолчанию, равно текущему индексу анимации плюс единица. Если новое значение будет слишком большим, этот метод устанавливает индекс в 0. Подклассы могут потребоваться переопределить этот метод, чтобы убедиться, что индекс не превышает количество кадров, необходимое для конкретного экземпляра полосы прогресса. Этот метод вызывается фоновым потоком анимации каждые X миллисекунд, где X задаётся значением по умолчанию «ProgressBar.repaintInterval».
С:
1.4
См. также:
  • setAnimationIndex(int)

© 1993, 2023, 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/21/docs/api/java.desktop/javax/swing/plaf/basic/BasicProgressBarUI.html

Spec-Zone.ru

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