Spec-Zone.ru › OpenJDK 17

Класс JLayer<V extends Component>

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JLayer<V>
Параметры типа:
V - тип компонента представления JLayer
Все реализуемые интерфейсы:
ImageObserver, MenuContainer, PropertyChangeListener, Serializable, EventListener, Accessible, Scrollable
public final class JLayer<V extends Component> extends JComponent implements Scrollable, PropertyChangeListener, Accessible
JLayer — универсальный декоратор для Swing-компонентов, который позволяет реализовывать различные расширенные эффекты отрисовки, а также получать уведомления обо всех AWTEvent событиях, генерируемых внутри его границ.

JLayer делегирует обработку отрисовки и событий ввода объекту LayerUI, который выполняет фактическое декорирование.

Реализованная в LayerUI пользовательская отрисовка и уведомления о событиях действуют для самого JLayer и всех его подкомпонентов. Это сочетание позволяет обогатить существующие компоненты, добавив новые расширенные функции, такие как временная блокировка иерархии, подсказки для составных компонентов, улучшенное прокручивание мышью и т. д.

JLayer является хорошим решением, если вам нужно выполнить только пользовательскую отрисовку поверх составного компонента или перехватить события ввода от его подкомпонентов.

 import javax.swing.*;
 import javax.swing.plaf.LayerUI;
 import java.awt.*;

 public class JLayerSample {

     private static JLayer<JComponent> createLayer() {
         // This custom layerUI will fill the layer with translucent green
         // and print out all mouseMotion events generated within its borders
         LayerUI<JComponent> layerUI = new LayerUI<JComponent>() {

             public void paint(Graphics g, JComponent c) {
                 // paint the layer as is
                 super.paint(g, c);
                 // fill it with the translucent green
                 g.setColor(new Color(0, 128, 0, 128));
                 g.fillRect(0, 0, c.getWidth(), c.getHeight());
             }

             public void installUI(JComponent c) {
                 super.installUI(c);
                 // enable mouse motion events for the layer's subcomponents
                 ((JLayer) c).setLayerEventMask(AWTEvent.MOUSE_MOTION_EVENT_MASK);
             }

             public void uninstallUI(JComponent c) {
                 super.uninstallUI(c);
                 // reset the layer event mask
                 ((JLayer) c).setLayerEventMask(0);
             }

             // overridden method which catches MouseMotion events
             public void eventDispatched(AWTEvent e, JLayer<? extends JComponent> l) {
                 System.out.println("AWTEvent detected: " + e);
             }
         };
         // create a component to be decorated with the layer
         JPanel panel = new JPanel();
         panel.add(new JButton("JButton"));

         // create the layer for the panel using our custom layerUI
         return new JLayer<JComponent>(panel, layerUI);
     }

     private static void createAndShowGUI() {
         final JFrame frame = new JFrame();
         frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

         // work with the layer as with any other Swing component
         frame.add(createLayer());

         frame.setSize(200, 200);
         frame.setLocationRelativeTo(null);
         frame.setVisible(true);
     }

     public static void main(String[] args) throws Exception {
         SwingUtilities.invokeAndWait(new Runnable() {
             public void run() {
                 createAndShowGUI();
             }
         });
     }
 }
 
Примечание: JLayer не поддерживает следующие методы:
  • Container.add(java.awt.Component)
  • Container.add(String, java.awt.Component)
  • Container.add(java.awt.Component, int)
  • Container.add(java.awt.Component, Object)
  • Container.add(java.awt.Component, Object, int)
Использование любого из них приведет к тому, что будет брошено UnsupportedOperationException, для добавления компонента в JLayer используйте setView(Component) или setGlassPane(JPanel).
С тех пор:
1.7
См. также:
  • JLayer(Component)
  • setView(Component)
  • getView()
  • LayerUI
  • JLayer(Component, LayerUI)
  • setUI(javax.swing.plaf.LayerUI)
  • getUI()

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

Вложенные классы/интерфейсы, объявленные в классе javax.swing.JComponent

JComponent.AccessibleJComponent

Вложенные классы/интерфейсы, объявленные в классе java.awt.Container

Container.AccessibleAWTContainer

Вложенные классы/интерфейсы, объявленные в классе java.awt.Component

Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy

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

Поля, объявленные в классе javax.swing.JComponent

listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW

Поля, объявленные в классе java.awt.Component

accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT

Поля, объявленные в интерфейсе java.awt.image.ImageObserver

ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH

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

Конструктор Описание
JLayer()
Создает новый объект JLayer с компонентом представления null и стандартным LayerUI.
JLayer(V view)
Создает новый объект JLayer со стандартным LayerUI.
JLayer(V view, LayerUI<V> ui)
Создает новый объект JLayer с указанным компонентом представления и объектом LayerUI.

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

Модификатор и тип Метод Описание
protected void addImpl(Component comp, Object constraints, int index)
Этот метод не поддерживается JLayer и всегда выбрасывает UnsupportedOperationException
JPanel createGlassPane()
Вызывается методами-конструкторами для создания стандартного glassPane.
void doLayout()
Делегирует свою функциональность методу LayerUI.doLayout(JLayer), если LayerUI установлено.
AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим JLayer.
Border getBorder()
Делегирует свою функциональность методу getView().getBorder(), если компонент представления является экземпляром javax.swing.JComponent, в противном случае возвращает null.
JPanel getGlassPane()
Возвращает компонент glassPane объекта JLayer или null.
long getLayerEventMask()
Возвращает битовую карту маски событий, которые должны быть получены этим JLayer и его LayerUI.
Dimension getPreferredScrollableViewportSize()
Возвращает предпочтительные размеры области просмотра для компонента представления.
int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
Возвращает шаг прокрутки, необходимый для компонентов, отображающих логические строки или столбцы, чтобы полностью отобразить один блок строк или столбцов, в зависимости от значения ориентации.
boolean getScrollableTracksViewportHeight()
Возвращает false для указания того, что высота области просмотра не определяет высоту слоя, если предпочтительная высота слоя меньше высоты области просмотра.
boolean getScrollableTracksViewportWidth()
Возвращает false для указания того, что ширина области просмотра не определяет ширину слоя, если предпочтительная ширина слоя меньше ширины области просмотра.
int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
Возвращает шаг прокрутки, необходимый для компонентов, отображающих логические строки или столбцы, чтобы полностью отобразить новую строку или столбец, в зависимости от значения ориентации.
LayerUI<? super V> getUI()
Возвращает LayerUI для этого JLayer.
V getView()
Возвращает компонент представления объекта JLayer или null.
boolean imageUpdate(Image img, int infoflags, int x, int y, int w, int h)
Делегирует свою функциональность методу LayerUI.imageUpdate(java.awt.Image, int, int, int, int, int, JLayer), если LayerUI установлено.
boolean isOptimizedDrawingEnabled()
JLayer переопределяет стандартную реализацию этого метода (в JComponent) для возвращения false.
protected boolean isPaintingOrigin()
Всегда возвращает true для того, чтобы отрисовка происходила из JLayer, или одного из его предков.
void paint(Graphics g)
Делегирует всю отрисовку объекту LayerUI.
protected void paintComponent(Graphics g)
Этот метод пуст, так как вся отрисовка выполняется методами paint(Graphics) и ComponentUI.update(Graphics, JComponent)
void paintImmediately(int x, int y, int w, int h)
Делегирует свою функциональность методу LayerUI.paintImmediately(int, int, int, int, JLayer), если LayerUI установлено.
void propertyChange(PropertyChangeEvent evt)
Этот метод вызывается при изменении связанного свойства.
void setBorder(Border border)
Делегирует свою функциональность методу getView().setBorder(Border), если компонент представления является экземпляром javax.swing.JComponent, в противном случае этот метод является пустой операцией.
void setGlassPane(JPanel glassPane)
Устанавливает компонент glassPane объекта JLayer, который может быть null.
void setLayerEventMask(long layerEventMask)
Включает доставку событий от JLayer и всех его потомков, определенных параметром маски событий, в метод LayerUI.eventDispatched(AWTEvent, JLayer).
void setLayout(LayoutManager mgr)
Устанавливает менеджер компоновки для этого контейнера.
void setUI(LayerUI<? super V> ui)
Устанавливает LayerUI, который будет выполнять отрисовку и получать события ввода для этого JLayer.
void setView(V view)
Устанавливает компонент представления объекта JLayer, который может быть null.
void updateUI()
Делегирует свою функциональность методу LayerUI.updateUI(JLayer), если LayerUI установлено.

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

addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update

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

add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate, validateTree

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

action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle

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

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

Подробное описание конструкторов

JLayer

public JLayer()
Создаёт новый объект JLayer с компонентом представления null и стандартной LayerUI.
См. также:
  • setView(V)
  • setUI(javax.swing.plaf.LayerUI<? super V>)

JLayer

public JLayer(V view)
Создаёт новый объект JLayer со стандартной LayerUI.
Параметры:
view - компонент, который будет декорирован этим JLayer
См. также:
  • setUI(javax.swing.plaf.LayerUI<? super V>)

JLayer

public JLayer(V view, LayerUI<V> ui)
Создаёт новый объект JLayer со заданным компонентом представления и объектом LayerUI.
Параметры:
view - компонент, который будет декорирован
ui - делегат LayerUI, который будет использоваться этим JLayer

Подробное описание методов

getView

public V getView()
Возвращает компонент представления JLayer или null.
Это свойство привязано.
Возвращает:
компонент представления JLayer или null, если он отсутствует
См. также:
  • setView(Component)

setView

public void setView(V view)
Устанавливает компонент представления JLayer для null.
Это свойство привязано.
Параметры:
view - компонент представления для этого JLayer
См. также:
  • getView()

setUI

public void setUI(LayerUI<? super V> ui)
Устанавливает LayerUI, который будет выполнять рисование и получать события ввода для этого JLayer.
Параметры:
ui - LayerUI для этого JLayer

getUI

public LayerUI<? super V> getUI()
Возвращает LayerUI для этого JLayer.
Переопределяет:
getUI в классе JComponent
Возвращает:
LayerUI для этого JLayer

getGlassPane

public JPanel getGlassPane()
Возвращает компонент glassPane JLayer или null.
Это свойство привязано.
Возвращает:
компонент glassPane JLayer или null, если он отсутствует
См. также:
  • setGlassPane(JPanel)

setGlassPane

public void setGlassPane(JPanel glassPane)
Устанавливает компонент glassPane JLayer для null.
Это свойство привязано.
Параметры:
glassPane - компонент glassPane этого JLayer
См. также:
  • getGlassPane()

createGlassPane

public JPanel createGlassPane()
Вызывается методами-конструкторами для создания стандартного glassPane. По умолчанию этот метод создаёт новый JPanel с видимость установленной в true и opacity в false.
Возвращает:
стандартный glassPane

setLayout

public void setLayout(LayoutManager mgr)
Устанавливает менеджер компоновки для этого контейнера. Этот метод переопределён для предотвращения установки менеджера компоновки.

Примечание: Если mgr не null, этот метод бросит исключение, так как менеджеры компоновки не поддерживаются на JLayer.

Переопределяет:
setLayout в классе Container
Параметры:
mgr - указанный менеджер компоновки
Исключения:
IllegalArgumentException - этот метод не поддерживается
См. также:
  • Container.doLayout()
  • Container.getLayout()
  • Container.invalidate()

setBorder

public void setBorder(Border border)
Делегирует свою функциональность методу getView().setBorder(Border) , если компонент представления является экземпляром javax.swing.JComponent, в противном случае этот метод является бесполезным.
Переопределяет:
setBorder в классе JComponent
Параметры:
border - граница, которая будет отображаться для компонента view
См. также:
  • getView()
  • JComponent.setBorder(Border)

getBorder

public Border getBorder()
Делегирует свою функциональность методу getView().getBorder() , если компонент представления является экземпляром javax.swing.JComponent, в противном случае возвращает null.
Переопределяет:
getBorder в классе JComponent
Возвращает:
объект границы для компонента view
См. также:
  • getView()
  • setBorder(javax.swing.border.Border)
  • JComponent.getBorder()

addImpl

protected void addImpl(Component comp, Object constraints, int index)
Этот метод не поддерживается JLayer и всегда выбрасывает UnsupportedOperationException
Переопределяет:
addImpl в классе Container
Параметры:
comp - добавляемый компонент
constraints - объект, выражающий ограничения компоновки для этого компонента
index - позиция в списке контейнера, в которой следует вставить компонент, где -1 означает добавление в конец
Исключения:
UnsupportedOperationException - этот метод не поддерживается
См. также:
  • setView(Component)
  • setGlassPane(JPanel)

isPaintingOrigin

protected boolean isPaintingOrigin()
Всегда возвращает true для того, чтобы рисование происходило из JLayer, или одного из его предков.
Переопределяет:
isPaintingOrigin в классе JComponent
Возвращает:
true
См. также:
  • JComponent.isPaintingOrigin()

paintImmediately

public void paintImmediately(int x, int y, int w, int h)
Делегирует свою функциональность методу LayerUI.paintImmediately(int, int, int, int, JLayer), если LayerUI установлено.
Переопределяет:
paintImmediately в классе JComponent
Параметры:
x - значение x области, которая будет отрисована
y - значение y области, которая будет отрисована
w - ширина области, которая будет отрисована
h - высота области, которая будет отрисована
См. также:
  • JComponent.repaint(long, int, int, int, int)
  • JComponent.isPaintingOrigin()

imageUpdate

public boolean imageUpdate(Image img, int infoflags, int x, int y, int w, int h)
Делегирует свою функциональность методу LayerUI.imageUpdate(java.awt.Image, int, int, int, int, int, JLayer), если LayerUI установлено.
Specified by:
imageUpdate в интерфейсе ImageObserver
Overrides:
imageUpdate в классе Component
Parameters:
img - наблюдаемая картинка
infoflags - см. imageUpdate для получения дополнительной информации
x - координата x
y - координата y
w - ширина
h - высота
Returns:
false , если флаги информируют о полной загрузке картинки; true в противном случае.
See Also:
  • ImageObserver
  • Graphics.drawImage(Image, int, int, Color, java.awt.image.ImageObserver)
  • Graphics.drawImage(Image, int, int, java.awt.image.ImageObserver)
  • Graphics.drawImage(Image, int, int, int, int, Color, java.awt.image.ImageObserver)
  • Graphics.drawImage(Image, int, int, int, int, java.awt.image.ImageObserver)
  • ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)

paint

public void paint(Graphics g)
Делегирует всю отрисовку объекту LayerUI.
Overrides:
paint в классе JComponent
Parameters:
g - объект Graphics для отрисовки
See Also:
  • JComponent.paintComponent(java.awt.Graphics)
  • JComponent.paintBorder(java.awt.Graphics)
  • JComponent.paintChildren(java.awt.Graphics)
  • JComponent.getComponentGraphics(java.awt.Graphics)
  • JComponent.repaint(long, int, int, int, int)

paintComponent

protected void paintComponent(Graphics g)
Этот метод пустой, т.к. вся отрисовка выполняется методами paint(Graphics) и ComponentUI.update(Graphics, JComponent)
Overrides:
paintComponent в классе JComponent
Parameters:
g - объект Graphics для защиты
See Also:
  • JComponent.paint(java.awt.Graphics)
  • ComponentUI

isOptimizedDrawingEnabled

public boolean isOptimizedDrawingEnabled()
Метод JLayer переопределяет стандартную реализацию этого метода (в JComponent) на возврат false. Это гарантирует, что механизм отрисовки будет вызывать реализацию JLayer's paint, а не отправлять сообщения напрямую потомкам JLayer.
Overrides:
isOptimizedDrawingEnabled в классе JComponent
Returns:
false

propertyChange

public void propertyChange(PropertyChangeEvent evt)
Этот метод вызывается при изменении привязанного свойства.
Specified by:
propertyChange в интерфейсе PropertyChangeListener
Parameters:
evt - Объект PropertyChangeEvent, описывающий источник события и изменённое свойство.

setLayerEventMask

public void setLayerEventMask(long layerEventMask)
Включает события от JLayer и всех его потомков, определённых заданным параметром маски событий, для доставки методу LayerUI.eventDispatched(AWTEvent, JLayer).

События доставляются при условии, что LayerUI установлено для данного JLayer и JLayer отображается.

Следующий пример демонстрирует корректное использование этого метода в реализациях LayerUI.

    public void installUI(JComponent c) {
       super.installUI(c);
       JLayer l = (JLayer) c;
       // this LayerUI will receive only key and focus events
       l.setLayerEventMask(AWTEvent.KEY_EVENT_MASK | AWTEvent.FOCUS_EVENT_MASK);
    }

    public void uninstallUI(JComponent c) {
       super.uninstallUI(c);
       JLayer l = (JLayer) c;
       // JLayer must be returned to its initial state
       l.setLayerEventMask(0);
    }
 
По умолчанию JLayer не получает событий и его маска событий — 0.
Parameters:
layerEventMask - битовая маска типов событий для получения
See Also:
  • getLayerEventMask()
  • LayerUI.eventDispatched(AWTEvent, JLayer)
  • Component.isDisplayable()

getLayerEventMask

public long getLayerEventMask()
Возвращает битовую маску маски событий, получаемых этим JLayer и его LayerUI.

Это означает, что метод LayerUI.eventDispatched(AWTEvent, JLayer) будет получать только события, соответствующие этой маске.

По умолчанию JLayer не получает событий.

Returns:
битовая маска типов событий для получения этим JLayer

updateUI

public void updateUI()
Делегирует свою функциональность методу LayerUI.updateUI(JLayer), если LayerUI установлено.
Overrides:
updateUI в классе JComponent
See Also:
  • JComponent.setUI(javax.swing.plaf.ComponentUI)
  • UIManager.getLookAndFeel()
  • UIManager.getUI(javax.swing.JComponent)

getPreferredScrollableViewportSize

public Dimension getPreferredScrollableViewportSize()
Возвращает предпочтительный размер области просмотра для компонента-представления.

Если компонент-представление этого слоя реализует интерфейс Scrollable, этот метод делегирует свою реализацию этому компоненту.

Specified by:
getPreferredScrollableViewportSize в интерфейсе Scrollable
Returns:
предпочтительный размер области просмотра для компонента-представления
See Also:
  • Scrollable

getScrollableBlockIncrement

public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
Возвращает приращение прокрутки, необходимое для компонентов, отображающих логические строки или столбцы, для полного отображения блока строк или столбцов в зависимости от ориентации.

Если компонент-представление этого слоя реализует интерфейс Scrollable, этот метод делегирует свою реализацию этому компоненту.

Specified by:
getScrollableBlockIncrement в интерфейсе Scrollable
Parameters:
visibleRect - Видимая область просмотра
orientation - SwingConstants.VERTICAL или SwingConstants.HORIZONTAL.
direction - Меньше нуля для прокрутки вверх/влево, больше нуля для вниз/вправо.
Returns:
приращение "блока" для прокрутки в указанном направлении
See Also:
  • Scrollable

getScrollableTracksViewportHeight

public boolean getScrollableTracksViewportHeight()
Возвращает false для обозначения того, что высота области просмотра не определяет высоту слоя, если предпочтительная высота слоя меньше высоты области просмотра.

Если компонент-представление этого слоя реализует интерфейс Scrollable, этот метод делегирует свою реализацию этому компоненту.

Specified by:
getScrollableTracksViewportHeight в интерфейсе Scrollable
Returns:
следует ли слою отслеживать высоту области просмотра
See Also:
  • Scrollable

getScrollableTracksViewportWidth

public boolean getScrollableTracksViewportWidth()
Возвращает false для обозначения того, что ширина области просмотра не определяет ширину слоя, если предпочтительная ширина слоя меньше ширины области просмотра.

Если компонент-представление этого слоя реализует интерфейс Scrollable, этот метод делегирует свою реализацию этому компоненту.

Specified by:
getScrollableTracksViewportWidth в интерфейсе Scrollable
Returns:
следует ли слою отслеживать ширину области просмотра
See Also:
  • Scrollable

getScrollableUnitIncrement

public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
Возвращает приращение прокрутки, необходимое для компонентов, отображающих логические строки или столбцы, чтобы полностью отобразить новую строку или столбец в зависимости от значения ориентации. В идеале компоненты должны обрабатывать частично отображённую строку или столбец, возвращая расстояние, необходимое для полного отображения элемента.

Контейнеры прокрутки, такие как JScrollPane, будут использовать этот метод каждый раз, когда пользователь запрашивает прокрутку на единицу.

Если компонент представления этого слоя реализует Scrollable, этот метод делегирует свою реализацию компоненту представления.

Определено в:
getScrollableUnitIncrement в интерфейсе Scrollable
Параметры:
visibleRect - Видимая область представления внутри области просмотра
orientation - Либо SwingConstants.VERTICAL, либо SwingConstants.HORIZONTAL.
direction - Меньше нуля для прокрутки вверх/влево, больше нуля для вниз/вправо.
Возвращает:
Приращение "единицы" для прокрутки в указанном направлении. Это значение всегда должно быть положительным.
См. также:
  • Scrollable

doLayout

public void doLayout()
Делегирует свою функциональность методу LayerUI.doLayout(JLayer), если LayerUI установлено.
Переопределяет:
doLayout в классе Container
См. также:
  • LayoutManager.layoutContainer(java.awt.Container)
  • Container.setLayout(java.awt.LayoutManager)
  • Container.validate()

getAccessibleContext

public AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим JLayer.
Определено в:
getAccessibleContext в интерфейсе Accessible
Переопределяет:
getAccessibleContext в классе Component
Возвращает:
AccessibleContext, связанный с этим JLayer.

© 1993, 2021, 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/17/docs/api/java.desktop/javax/swing/JLayer.html

Spec-Zone.ru

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