Класс LayerUI<V extends Component>
- Параметры типа:
V- один из супертипов компонента представленияJLayer
- Все реализованные интерфейсы:
Serializable
public class LayerUI<V extends Component> extends ComponentUI implements Serializable
JLayer. Метод paint(java.awt.Graphics, javax.swing.JComponent) выполняет отрисовку JLayer, а метод eventDispatched(AWTEvent, JLayer) уведомляется о любых AWTEvent, сгенерированных компонентом JLayer или любым из его дочерних компонентов.
Делегат отличается от делегатов пользовательского интерфейса других компонентов, поскольку он независим от темы оформления и по умолчанию не обновляется при изменении темы оформления системы.
Подклассы LayerUI могут быть либо бессостоятельными и совместными для нескольких JLayer, либо нет.
- С тех пор как:
- 1.7
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
LayerUI() |
Создаёт LayerUI. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addPropertyChangeListener |
Добавляет PropertyChangeListener в список слушателей. |
void |
addPropertyChangeListener |
Добавляет PropertyChangeListener в список слушателей для определённого свойства. |
void |
applyPropertyChange |
Уведомляет LayerUI, когда любое из его свойств изменяется, и позволяет обновлять каждый компонент JLayer, которому установлен этот экземпляр LayerUI. |
void |
doLayout |
Вызывает разбиение компонентов переданного экземпляра JLayer. |
void |
eventDispatched |
Обрабатывает события AWTEvent для JLayer и всех его потомков для этого экземпляра LayerUI. |
protected void |
firePropertyChange |
Поддержка отчётов об изменениях привязанных свойств для свойств типа Object. |
int |
getBaseline |
Если компонент представления JLayer не null, это вызывает метод getBaseline() представления. |
Component.BaselineResizeBehavior |
getBaselineResizeBehavior |
Если компонент представления JLayer не null, это возвращает результат метода getBaselineResizeBehavior() представления. |
Dimension |
getMaximumSize |
Если компонент представления JLayer не null, это возвращает результат метода getMaximumSize() представления. |
Dimension |
getMinimumSize |
Если компонент представления JLayer не null, это возвращает результат метода getMinimalSize() представления. |
Dimension |
getPreferredSize |
Если компонент представления JLayer не null, это возвращает результат метода getPreferredSize() представления. |
PropertyChangeListener[] |
getPropertyChangeListeners() |
Возвращает массив всех слушателей изменений свойств, зарегистрированных в этом компоненте. |
PropertyChangeListener[] |
getPropertyChangeListeners |
Возвращает массив всех слушателей, связанных с заданным свойством. |
boolean |
imageUpdate |
Делегирует свою функциональность реализации метода JLayer.imageUpdate по умолчанию, унаследованному от базовых классов JLayer. |
void |
installUI |
Настраивает JLayer, которому установлен этот экземпляр LayerUI. |
void |
paint |
Отрисовывает указанный компонент. |
void |
paintImmediately |
Отрисовывает указанную область в JLayer, которому установлен этот экземпляр LayerUI, немедленно. |
protected void |
processComponentEvent |
Обрабатывает события компонентов, происходящие на JLayer или любом из его подкомпонентов. |
| ... | ... | ... |
Методы, объявленные в классе javax.swing.plaf.ComponentUI
contains, createUI, getAccessibleChild, getAccessibleChildrenCount, update
Подробное описание конструкторов
LayerUI
public LayerUI()
LayerUI.Подробное описание методов
paint
public void paint(Graphics g, JComponent c)
Graphics для рендеринга содержимого компонента. По умолчанию, этот метод рисует переданный компонент как есть.
- Overrides:
-
paintв классеComponentUI - Параметры:
-
g- контекстGraphicsдля рисования -
c- компонент, который нужно нарисовать - См. также:
eventDispatched
public void eventDispatched(AWTEvent e, JLayer<? extends V> l)
AWTEvent для JLayer и всех его потомков в экземпляре LayerUI. Чтобы включить обработку событий определённого типа, необходимо вызвать JLayer.setLayerEventMask(long) в installUI(javax.swing.JComponent) и установить маску событий слоя на 0 в uninstallUI(javax.swing.JComponent) после этого. По умолчанию этот метод вызывает соответствующий метод process<event type>Event для данного типа события.
Примечание: События обрабатываются только для отображаемых JLayer.
- Параметры:
-
e- событие для обработки -
l- слой, для которого установлен данный LayerUI - См. также:
processComponentEvent
protected void processComponentEvent(ComponentEvent e, JLayer<? extends V> l)
JLayer или его подкомпонентах. Этот метод не вызывается, если события компонентов не включены для JLayer объектов, для которых установлен данный LayerUI. События компонентов включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть выключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.COMPONENT_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеComponentEvent -
l- слой, для которого установлен данныйLayerUI - См. также:
processFocusEvent
protected void processFocusEvent(FocusEvent e, JLayer<? extends V> l)
JLayer или его подкомпонентах. Этот метод не вызывается, если события фокуса не включены для JLayer объектов, для которых установлен данный LayerUI. События фокуса включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть выключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.FOCUS_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеFocusEvent -
l- слой, для которого установлен данныйLayerUI - См. также:
processKeyEvent
protected void processKeyEvent(KeyEvent e, JLayer<? extends V> l)
JLayer или его подкомпонентах. Этот метод не вызывается, если события нажатия клавиш не включены для JLayer объектов, для которых установлен данный LayerUI. События нажатия клавиш включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть выключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.KEY_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеKeyEvent -
l- слой, для которого установлен данныйLayerUI - См. также:
processMouseEvent
protected void processMouseEvent(MouseEvent e, JLayer<? extends V> l)
JLayer или его подкомпонентах. Этот метод не вызывается, если события мыши не включены для JLayer объектов, для которых установлен данный LayerUI. События мыши включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть выключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.MOUSE_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеMouseEvent -
l- слой, для которого установлен данныйLayerUI - См. также:
processMouseMotionEvent
protected void processMouseMotionEvent(MouseEvent e, JLayer<? extends V> l)
JLayer или его подкомпонентах. Этот метод не вызывается, если события движения мыши не включены для JLayer объектов, для которых установлен данный LayerUI. События движения мыши включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть выключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.MOUSE_MOTION_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеMouseEvent -
l- слой, для которого установлен данныйLayerUI - См. также:
processMouseWheelEvent
protected void processMouseWheelEvent(MouseWheelEvent e, JLayer<? extends V> l)
JLayer или его подкомпонентах. Этот метод не вызывается, если события колеса мыши не включены для JLayer объектов, для которых установлен данный LayerUI. События колеса мыши включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть выключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.MOUSE_WHEEL_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеMouseEvent -
l- слой, для которого установлен данныйLayerUI - См. также:
обработкаСобытияВвода
protected void processInputMethodEvent(InputMethodEvent e, JLayer<? extends V> l)
JLayer или любом его подкомпоненте. Этот метод не вызывается, если события ввода не включены для объектов JLayer, которые установлены для этого LayerUI. События ввода включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть отключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.INPUT_METHOD_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеInputMethodEvent -
l- слой, которому установлен этотLayerUI - См. также:
обработкаСобытияИерархии
protected void processHierarchyEvent(HierarchyEvent e, JLayer<? extends V> l)
JLayer или любом его подкомпоненте. Этот метод не вызывается, если события иерархии не включены для объектов JLayer, которые установлены для этого LayerUI. События иерархии включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть отключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.HIERARCHY_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеHierarchyEvent -
l- слой, которому установлен этотLayerUI - См. также:
обработкаСобытияГраницИерархии
protected void processHierarchyBoundsEvent(HierarchyEvent e, JLayer<? extends V> l)
JLayer или любом его подкомпоненте. Этот метод не вызывается, если события границ иерархии не включены для объектов JLayer, которые установлены для этого LayerUI. События границ иерархии включаются в переопределённом методе installUI(javax.swing.JComponent) и должны быть отключены в методе uninstallUI(javax.swing.JComponent) после этого.
public void installUI(JComponent c) {
super.installUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(AWTEvent.HIERARCHY_BOUNDS_EVENT_MASK);
}
public void uninstallUI(JComponent c) {
super.uninstallUI(c);
JLayer l = (JLayer) c;
l.setLayerEventMask(0);
}
- Параметры:
-
e- обрабатываемоеHierarchyEvent -
l- слой, которому установлен этотLayerUI - См. также:
обновитьUI
public void updateUI(JLayer<? extends V> l)
- Параметры:
-
l-JLayer, UI которого обновляется
установитьUI
public void installUI(JComponent c)
JLayer, которому установлен этот LayerUI. По умолчанию, переданный компонент JLayer регистрируется как слушатель PropertyChangeListener для изменений свойств этого LayerUI.- Переопределяет:
-
installUIв классеComponentUI - Параметры:
-
c- компонентJLayer, где устанавливается делегат UI - См. также:
удалитьUI
public void uninstallUI(JComponent c)
installUI(JComponent). По умолчанию, переданный компонент JLayer отменяется как слушатель PropertyChangeListener для изменений свойств этого LayerUI.- Переопределяет:
-
uninstallUIв классеComponentUI - Параметры:
-
c- компонент, из которого удаляется этот делегат UI. - См. также:
добавитьСлушателяИзмененийСвойств
public void addPropertyChangeListener(PropertyChangeListener listener)
Если listener является null, исключение не выбрасывается и действие не выполняется.
- Параметры:
-
listener- слушатель изменений свойств для добавления - См. также:
удалитьСлушателяИзмененийСвойств
public void removePropertyChangeListener(PropertyChangeListener listener)
Если listener является null, исключение не выбрасывается и действие не выполняется.
- Параметры:
-
listener- PropertyChangeListener для удаления - См. также:
получитьСлушателейИзмененийСвойств
public PropertyChangeListener[] getPropertyChangeListeners()
- Возвращает:
- все слушатели
PropertyChangeListenerэтого UI или пустой массив, если слушатели изменений свойств не зарегистрированы - См. также:
добавитьСлушателяИзмененийСвойств
public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
Если propertyName или listener является null, исключение не выбрасывается и действие не выполняется.
- Параметры:
-
propertyName- одно из названий свойств, перечисленных выше -
listener- слушатель изменений свойства для добавления - См. также:
удалитьСлушателяИзмененийСвойств
public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
PropertyChangeListener из списка слушателей для определённого свойства. Этот метод следует использовать для удаления PropertyChangeListener, зарегистрированных для определённого связанного свойства. Если propertyName или listener является null, исключение не выбрасывается и действие не выполняется.
- Параметры:
-
propertyName- допустимое имя свойства -
listener- PropertyChangeListener для удаления - См. также:
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
- Parameters:
-
propertyName- Название свойства, за которым ведётся наблюдение - Returns:
- все
PropertyChangeListener, связанные с заданным свойством; если такие слушатели не были добавлены или еслиpropertyNameявляетсяnull, возвращается пустой массив - See Also:
firePropertyChange
protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
- Parameters:
-
propertyName- свойство, значение которого изменилось -
oldValue- предыдущее значение свойства -
newValue- новое значение свойства
applyPropertyChange
public void applyPropertyChange(PropertyChangeEvent evt, JLayer<? extends V> l)
LayerUI о любых изменениях его свойств и позволяет обновлять все JLayer, к которым установлен этот экземпляр LayerUI.- Parameters:
-
evt- событие PropertyChangeEvent, сгенерированное этимLayerUI -
l-JLayer, к которому установлен LayerUI
getBaseline
public int getBaseline(JComponent c, int width, int height)
JLayer не является null, этот метод вызывает метод getBaseline() отображения. В противном случае вызывается реализация по умолчанию.- Overrides:
-
getBaselineв классеComponentUI - Parameters:
-
c-JLayerдля получения поведения изменения базовой линии -
width- ширина для получения базовой линии -
height- высота для получения базовой линии - Returns:
- базовую линию или значение < 0, указывающее, что нет разумной базовой линии
- See Also:
getBaselineResizeBehavior
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
JLayer не является null, этот метод возвращает результат метода getBaselineResizeBehavior() отображения. В противном случае вызывается реализация по умолчанию.- Overrides:
-
getBaselineResizeBehaviorв классеComponentUI - Parameters:
-
c-JLayerдля получения поведения изменения базовой линии - Returns:
- перечисление, указывающее, как изменяется базовой линия при изменении размера компонента
- See Also:
doLayout
public void doLayout(JLayer<? extends V> l)
JLayer размещение его компонентов.- Parameters:
-
l- компонентJLayer, куда устанавливается этот делегат UI
getPreferredSize
public Dimension getPreferredSize(JComponent c)
JLayer не является null, этот метод возвращает результат метода getPreferredSize() отображения. В противном случае используется реализация по умолчанию.- Overrides:
-
getPreferredSizeв классеComponentUI - Parameters:
-
c-JLayerдля получения предпочтительного размера - Returns:
- предпочтительный размер для переданного
JLayer - See Also:
getMinimumSize
public Dimension getMinimumSize(JComponent c)
JLayer не является null, этот метод возвращает результат метода getMinimalSize() отображения. В противном случае используется реализация по умолчанию.- Overrides:
-
getMinimumSizeв классеComponentUI - Parameters:
-
c-JLayerдля получения предпочтительного размера - Returns:
- минимальный размер для переданного
JLayer - See Also:
getMaximumSize
public Dimension getMaximumSize(JComponent c)
JLayer не является null, этот метод возвращает результат метода getMaximumSize() отображения. В противном случае используется реализация по умолчанию.- Overrides:
-
getMaximumSizeв классеComponentUI - Parameters:
-
c-JLayerдля получения предпочтительного размера - Returns:
- максимальный размер для переданного
JLayer - See Also:
paintImmediately
public void paintImmediately(int x, int y, int width, int height, JLayer<? extends V> l)
JLayer к которому установлен этот LayerUI. Этот метод следует переопределять, когда область изменения требуется изменить. Реализация по умолчанию делегирует свою функциональность методу JComponent.paintImmediately(int, int, int, int).
- Parameters:
-
x- значение x области, подлежащей отрисовке -
y- значение y области, подлежащей отрисовке -
width- ширина области, подлежащей отрисовке -
height- высота области, подлежащей отрисовке -
l- компонентJLayer - See Also:
imageUpdate
public boolean imageUpdate(Image img, int infoflags, int x, int y, int w, int h, JLayer<? extends V> l)
JLayer.imageUpdate, унаследованного от базовых классов JLayer. Этот метод следует переопределять вместо JLayer.imageUpdate.
Примечание: Этот метод обычно не вызывается на потоке обработки событий.
- Parameters:
-
img- наблюдаемое изображение -
infoflags- см. imageUpdate для получения информации -
x- координата x -
y- координата y -
w- ширина -
h- высота -
l- компонентJLayer - Returns:
- false, если infoflags указывают, что изображение полностью загружено; в противном случае true
© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/plaf/LayerUI.html