Класс ComponentUI

Прямые известные подклассы:
ButtonUI, ColorChooserUI, ComboBoxUI, DesktopIconUI, DesktopPaneUI, FileChooserUI, InternalFrameUI, LabelUI, LayerUI, ListUI, MenuBarUI, OptionPaneUI, PanelUI, PopupMenuUI, ProgressBarUI, RootPaneUI, ScrollBarUI, ScrollPaneUI, SeparatorUI, SliderUI, SpinnerUI, SplitPaneUI, TabbedPaneUI, TableHeaderUI, TableUI, TextUI, ToolBarUI, ToolTipUI, TreeUI, ViewportUI
public abstract class ComponentUI
extends Object

Базовый класс для всех объектов-делегатов UI в архитектуре Swing с настраиваемым внешним видом. Объект-делегат UI для компонента Swing отвечает за реализацию аспектов компонента, зависящих от внешнего вида. Класс JComponent вызывает методы из этого класса для делегирования операций (рисование, вычисление макета и т.д.), которые могут различаться в зависимости от установленного внешнего вида. Клиентские программы не должны вызывать методы этого класса напрямую.

См. также:
JComponent, UIManager

Конструкторы

Конструктор Описание
ComponentUI()

Единственный конструктор.

Методы

Модификатор и тип Метод Описание
boolean contains​(JComponent c, int x, int y)

Возвращает true, если указанные координаты x,y находятся внутри определенной формы внешнего вида указанного компонента.

static ComponentUI createUI​(JComponent c)

Возвращает экземпляр делегата UI для указанного компонента.

Accessible getAccessibleChild​(JComponent c, int i)

Возвращает i-й Accessible дочерний элемент объекта.

int getAccessibleChildrenCount​(JComponent c)

Возвращает количество доступных дочерних элементов в объекте.

int getBaseline​(JComponent c, int width, int height)

Возвращает базовую линию.

Component.BaselineResizeBehavior getBaselineResizeBehavior​(JComponent c)

Возвращает перечисление, указывающее, как изменяется базовая линия компонента при изменении размера.

Dimension getMaximumSize​(JComponent c)

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

Dimension getMinimumSize​(JComponent c)

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

Dimension getPreferredSize​(JComponent c)

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

void installUI​(JComponent c)

Настраивает указанный компонент в соответствии с внешним видом.

void paint​(Graphics g, JComponent c)

Рисует указанный компонент в соответствии с внешним видом.

void uninstallUI​(JComponent c)

Отменяет настройку, выполненную для указанного компонента во время installUI.

void update​(Graphics g, JComponent c)

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

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

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

Конструкторы

ComponentUI

public ComponentUI()

Единственный конструктор. (Для вызова конструкторами подклассов, обычно неявным).

Методы

installUI

public void installUI(JComponent c)

Настраивает указанный компонент должным образом для внешнего вида и ощущения. Этот метод вызывается, когда экземпляр ComponentUI устанавливается в качестве делегата пользовательского интерфейса для указанного компонента. Этот метод должен полностью настроить компонент для внешнего вида и ощущения, включая следующее:

  1. Установить значения по умолчанию для свойств цвета, шрифтов, границ, значков, непрозрачности и т. д. на компоненте. По возможности значения свойств, инициализированные программой-клиентом, не должны переопределяться.
  2. Установить LayoutManager на компоненте, если необходимо.
  3. Создать/добавить любые необходимые подкомпоненты к компоненту.
  4. Создать/установить обработчики событий на компоненте.
  5. Создать/установить PropertyChangeListener на компоненте, чтобы корректно обнаруживать и реагировать на изменения свойств компонента.
  6. Установить пользовательский интерфейс клавиатуры (мнемоники, навигация и т. д.) на компоненте.
  7. Инициализировать любые соответствующие данные экземпляра.

Параметры:
c - компонент, на котором устанавливается этот делегат пользовательского интерфейса
См. также:
uninstallUI(javax.swing.JComponent), JComponent.setUI(javax.swing.plaf.ComponentUI), JComponent.updateUI()

uninstallUI

public void uninstallUI(JComponent c)

Отменяет настройки, выполненные для указанного компонента во время installUI. Этот метод вызывается, когда экземпляр UIComponent удаляется в качестве делегата пользовательского интерфейса для указанного компонента. Этот метод должен отменить настройки, выполненные в installUI, и позаботиться о том, чтобы экземпляр JComponent находился в чистом состоянии (без лишних обработчиков, объектов свойств, специфичных для внешнего вида и ощущения и т. д.). Это должно включать следующее:

  1. Удалить любые установленные UI-границы из компонента.
  2. Удалить любые установленные UI-менеджеры компоновки из компонента.
  3. Удалить любые добавленные UI-подкомпоненты из компонента.
  4. Удалить любые добавленные UI-обработчики событий/свойств из компонента.
  5. Удалить любой установленный UI-пользовательский интерфейс клавиатуры из компонента.
  6. Установить в null любые выделенные объекты данных экземпляра, чтобы разрешить сборку мусора.

Параметры:
c - компонент, из которого удаляется этот делегат пользовательского интерфейса; этот аргумент часто игнорируется, но может быть использован, если объект UI является бессостоятельным и используется несколькими компонентами
См. также:
installUI(javax.swing.JComponent), JComponent.updateUI()

paint

public void paint(Graphics g,
                  JComponent c)

Рисует указанный компонент должным образом для внешнего вида и ощущения. Этот метод вызывается из метода ComponentUI.update при отрисовке указанного компонента. Подклассы должны переопределять этот метод и использовать указанный объект Graphics для рендеринга содержимого компонента.

Параметры:
g - контекст Graphics для рисования
c - компонент, который рисуется; этот аргумент часто игнорируется, но может быть использован, если объект UI является бессостоятельным и используется несколькими компонентами
См. также:
update(java.awt.Graphics, javax.swing.JComponent)

update

public void update(Graphics g,
                   JComponent c)

Уведомляет этот делегат пользовательского интерфейса о том, что пришло время нарисовать указанный компонент. Этот метод вызывается JComponent при отрисовке указанного компонента.

По умолчанию этот метод заполняет указанный компонент его цветом фона, если его свойство opaque равно true, а затем немедленно вызывает paint. В общем случае этот метод не требуется переопределять подклассами; весь код рендеринга внешнего вида и ощущения должен находиться в методе paint.

Параметры:
g - контекст Graphics для рисования
c - компонент, который рисуется; этот аргумент часто игнорируется, но может быть использован, если объект UI является бессостоятельным и используется несколькими компонентами
См. также:
paint(java.awt.Graphics, javax.swing.JComponent), JComponent.paintComponent(java.awt.Graphics)

getPreferredSize

public Dimension getPreferredSize(JComponent c)

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

Параметры:
c - компонент, размер которого запрашивается; этот аргумент часто игнорируется, но может быть использован, если объект UI является бессостоятельным и используется несколькими компонентами
Возвращает:
объект Dimension, содержащий предпочтительный размер заданного компонента, соответствующий внешнему виду и ощущению
См. также:
JComponent.getPreferredSize(), LayoutManager.preferredLayoutSize(java.awt.Container)

getMinimumSize

public Dimension getMinimumSize(JComponent c)

Возвращает минимальный размер указанного компонента, соответствующий внешнему виду и ощущению. Если возвращается null, минимальный размер будет рассчитан менеджером компоновки компонента (это предпочтительный подход для любого компонента с установленным конкретным менеджером компоновки). Реализация по умолчанию этого метода вызывает getPreferredSize и возвращает это значение.

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

getMaximumSize

public Dimension getMaximumSize(JComponent c)

Возвращает максимальный размер указанного компонента, соответствующий внешнему виду и ощущению. Если возвращается null, максимальный размер будет рассчитан менеджером компоновки компонента (это предпочтительный подход для любого компонента с установленным конкретным менеджером компоновки). Реализация по умолчанию этого метода вызывает getPreferredSize и возвращает это значение.

Параметры:
c - компонент, максимальный размер которого запрашивается; этот аргумент часто игнорируется, но может быть использован, если объект UI является бессостоятельным и используется несколькими компонентами
Возвращает:
объект Dimension или null
См. также:
JComponent.getMaximumSize(), LayoutManager2.maximumLayoutSize(java.awt.Container)

contains

public boolean contains(JComponent c,
                        int x,
                        int y)

Возвращает true, если указанные координаты x, y находятся внутри определенной формы внешнего вида и ощущения указанного компонента. x и y определены относительно системы координат указанного компонента. Хотя область компонента ограничена прямоугольником, этот метод предоставляет возможность определения непрямоугольной формы в этих границах для целей определения попадания.

Параметры:
c - компонент, в котором запрашивается местоположение x, y; этот аргумент часто игнорируется, но может быть использован, если объект UI является бессостоятельным и используется несколькими компонентами
x - координата x точки
y - координата y точки
Возвращает:
true , если указанное местоположение x,y находится внутри определенной формы внешнего вида и ощущения для данного компонента
См. также:
JComponent.contains(int, int), Component.contains(int, int)

createUI

public static ComponentUI createUI(JComponent c)

Возвращает экземпляр делегата пользовательского интерфейса для указанного компонента. Каждый подкласс должен предоставить свой собственный статический метод createUI, который возвращает экземпляр этого подкласса делегата пользовательского интерфейса. Если подкласс делегата пользовательского интерфейса является бессостоятельным, он может вернуть экземпляр, используемый несколькими компонентами. Если делегат пользовательского интерфейса имеет состояние, он должен возвращать новый экземпляр на компонент. Реализация по умолчанию этого метода генерирует ошибку, так как его никогда не следует вызывать.

Параметры:
c - JComponent для создания делегата пользовательского интерфейса
Возвращает:
объект ComponentUI для c

getBaseline

public int getBaseline(JComponent c,
                       int width,
                       int height)

Возвращает линию базового выравнивания. Линия базового выравнивания измеряется от верхней части компонента. Этот метод предназначен в основном для LayoutManager для выравнивания компонентов по своей базовой линии. Значение, меньшее 0, указывает, что у этого компонента нет разумной базовой линии, и LayoutManager не должны выравнивать этот компонент по своей базовой линии.

Этот метод возвращает -1. Подклассы, имеющие осмысленную базовую линию, должны переопределять ее соответствующим образом.

Параметры:
c - JComponent базовое выравнивание запрашивается для
width - ширина для получения базового выравнивания
height - высота для получения базового выравнивания
Возвращает:
базовую линию или значение < 0, указывающее, что разумной базовой линии нет
Исключения:
NullPointerException - если c равно null
IllegalArgumentException - если ширина или высота < 0
С:
1.6
См. также:
JComponent.getBaseline(int,int)

getBaselineResizeBehavior

public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)

Возвращает перечисление, указывающее, как изменяется нижняя граница компонента при изменении размера. Этот метод предназначен в основном для менеджеров компоновки и разработчиков графического интерфейса.

Этот метод возвращает BaselineResizeBehavior.OTHER. Подклассы, поддерживающие нижнюю границу, должны переопределить этот метод соответствующим образом.

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

getAccessibleChildrenCount

public int getAccessibleChildrenCount(JComponent c)

Возвращает количество доступных дочерних элементов в объекте. Если все дочерние элементы этого объекта реализуют Accessible, этот метод должен возвращать количество дочерних элементов этого объекта. Графические интерфейсы могут переопределить этот метод, если они отображают области на экране, которые можно рассматривать как компоненты, но фактические компоненты не используются для отображения этих областей. Примечание: начиная с версии 1.3, рекомендуется вызывать Component.AccessibleAWTComponent.getAccessibleChildrenCount() вместо этого метода.

Параметры:
c - JComponent для получения количества доступных дочерних элементов
Возвращает:
количество доступных дочерних элементов в объекте
См. также:
getAccessibleChild(javax.swing.JComponent, int)

getAccessibleChild

public Accessible getAccessibleChild(JComponent c,
                                     int i)

Возвращает i-й Accessible дочерний элемент объекта. Графические интерфейсы могут переопределить этот метод, если они отображают области на экране, которые можно рассматривать как компоненты, но фактические компоненты не используются для отображения этих областей.

Примечание: начиная с версии 1.3, рекомендуется вызывать Component.AccessibleAWTComponent.getAccessibleChild() вместо этого метода.

Параметры:
c - JComponent для получения дочернего объекта
i - индекс дочернего элемента (нумерация с 0)
Возвращает:
i-й Accessible дочерний элемент объекта
См. также:
getAccessibleChildrenCount(javax.swing.JComponent)

© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/javax/swing/plaf/ComponentUI.html

Spec-Zone .ru
спецификации, руководства, описания, API