Spec-Zone.ru › OpenJDK 25

Класс JRootPane

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JRootPane
Все реализуемые интерфейсы:
ImageObserver, MenuContainer, Serializable, Accessible
public class JRootPane extends JComponent implements Accessible
Легковесный контейнер, используемый во внутренних механизмах JFrame, JDialog, JWindow, JApplet и JInternalFrame. Практическую информацию о функциях, предоставляемых корневыми панелями, см. в разделе Как использовать корневые панели руководства Учебное руководство по Java.

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

The following text describes this graphic.

«Тяжеловесные» компоненты (те, которые делегируют работу объекту-посреднику или нативному компоненту в хост-системе) показаны более тёмными и толстыми рамками. Четыре тяжеловесных контейнера JFC/Swing (JFrame, JDialog, JWindow и JApplet) показаны относительно классов AWT, от которых они наследуются. Эти четыре компонента — единственные тяжеловесные контейнеры в библиотеке Swing. Также показан легковесный контейнер JInternalFrame. Все пять этих контейнеров JFC/Swing реализуют интерфейс RootPaneContainer и делегируют свои операции объекту JRootPane (на рисунке сверху у него есть небольшая «ручка»).
Примечание: Метод JComponent getRootPane можно использовать для получения JRootPane, содержащего заданный компонент.

Пример:

the following text describes this graphic.

Диаграмма справа показывает структуру JRootPane. JRootpane состоит из glassPane, необязательной menuBar и contentPane. (JLayeredPane управляет menuBar и contentPane.) glassPane располагается поверх всех компонентов и может перехватывать движения мыши. Поскольку glassPane (как и contentPane) может быть произвольным компонентом, glassPane также можно настроить для рисования. Линии и изображения на glassPane могут выходить за границы расположенных под ними фреймов, не ограничиваясь их пределами.

Хотя компонент menuBar необязателен, layeredPane, contentPane и glassPane существуют всегда. Попытка присвоить им значение null приводит к возникновению исключения.

Чтобы добавить компоненты в JRootPane (кроме необязательной строки меню), добавьте объект в contentPane объекта JRootPane, например:

      rootPane.getContentPane().add(child);
Тот же принцип применим при задании менеджеров компоновки, удалении компонентов, получении списка дочерних элементов и т. д. Все эти методы вызываются для contentPane, а не для JRootPane.
Примечание: Менеджер компоновки по умолчанию для contentPane — это менеджер BorderLayout. Однако в JRootPane используется пользовательский LayoutManager. Поэтому, если вы хотите изменить менеджер компоновки компонентов, добавленных в JRootPane, обязательно используйте код следующего вида:
   rootPane.getContentPane().setLayout(new BoxLayout());
Если компонент JMenuBar установлен в JRootPane, он располагается вдоль верхнего края фрейма. Положение и размер contentPane корректируются так, чтобы она заполняла оставшуюся область. (JMenuBar и contentPane добавляются в компонент layeredPane на слое JLayeredPane.FRAME_CONTENT_LAYER.)

layeredPane — родитель всех дочерних элементов в JRootPane: он является непосредственным родителем меню и родителем второго уровня для всех компонентов, добавленных в contentPane. Это экземпляр JLayeredPane, который позволяет добавлять компоненты на несколько слоёв. Эта возможность очень полезна при работе с всплывающими меню, диалоговыми окнами и перетаскиванием — в ситуациях, когда компонент необходимо разместить поверх всех остальных компонентов панели.

glassPane располагается поверх всех остальных компонентов в JRootPane. Это удобное место для рисования поверх всех остальных компонентов, а также для перехвата событий мыши, что полезно как при перетаскивании, так и при рисовании. Разработчики могут использовать setVisible для glassPane, чтобы управлять тем, когда glassPane отображается поверх других дочерних компонентов. По умолчанию glassPane невидима.

Пользовательский LayoutManager, используемый в JRootPane, обеспечивает следующее:

  1. glassPane заполняет всю видимую область JRootPane (границы минус внутренние отступы).
  2. layeredPane заполняет всю видимую область JRootPane (границы минус внутренние отступы).
  3. menuBar располагается у верхнего края layeredPane.
  4. contentPane заполняет всю видимую область за вычетом menuBar, если она присутствует.
Все остальные представления в иерархии представлений JRootPane игнорируются.

Если вы замените LayoutManager объекта JRootPane, управление всеми этими представлениями будет вашей ответственностью. Поэтому обычно следует убедиться, что вы изменяете менеджер компоновки для contentPane, а не для самого JRootPane!

Архитектура рисования Swing требует наличия непрозрачного JComponent в иерархии контейнеров над всеми остальными компонентами. Обычно эту роль выполняет панель содержимого. Если вы заменяете панель содержимого, рекомендуется сделать её непрозрачной с помощью setOpaque(true). Кроме того, если панель содержимого переопределяет paintComponent, она должна полностью закрашивать фон непрозрачным цветом в paintComponent.

Предупреждение: Swing не является потокобезопасной. Дополнительные сведения см. в разделе Политика потоков Swing.

Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации предназначена для кратковременного хранения или RMI между приложениями, работающими с одной и той же версией Swing. Начиная с версии 1.4, в пакет java.beans добавлена поддержка долгосрочного хранения всех JavaBeans. См. XMLEncoder.

Начиная с:
1.2
См. также:
  • JLayeredPane
  • JMenuBar
  • JWindow
  • JFrame
  • JDialog
  • JApplet
  • JInternalFrame
  • JComponent
  • BoxLayout
  • Сочетание тяжеловесных и легковесных компонентов

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

Модификатор и тип Класс Описание
protected class  JRootPane.AccessibleJRootPane
Этот класс реализует поддержку специальных возможностей для класса JRootPane.
protected class  JRootPane.RootLayout
Пользовательский менеджер компоновки, отвечающий за компоновку layeredPane, glassPane и menuBar.

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

JComponent.AccessibleJComponent

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

Container.AccessibleAWTContainer

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

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

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

Модификатор и тип Поле Описание
static final int COLOR_CHOOSER_DIALOG
Константа, используемая для свойства windowDecorationStyle.
protected Container contentPane
Панель содержимого.
protected JButton defaultButton
Кнопка, активируемая, когда панель находится в фокусе и выполняется действие, зависящее от пользовательского интерфейса, например нажатие клавиши Ввод.
static final int ERROR_DIALOG
Константа, используемая для свойства windowDecorationStyle.
static final int FILE_CHOOSER_DIALOG
Константа, используемая для свойства windowDecorationStyle.
static final int FRAME
Константа, используемая для свойства windowDecorationStyle.
protected Component glassPane
Стеклянная панель, расположенная поверх строки меню и панели содержимого, которая может перехватывать движения мыши и другие события.
static final int INFORMATION_DIALOG
Константа, используемая для свойства windowDecorationStyle.
protected JLayeredPane layeredPane
Многослойная панель, управляющая строкой меню и панелью содержимого.
protected JMenuBar menuBar
Строка меню.
static final int NONE
Константа, используемая для свойства windowDecorationStyle.
static final int PLAIN_DIALOG
Константа, используемая для свойства windowDecorationStyle.
static final int QUESTION_DIALOG
Константа, используемая для свойства windowDecorationStyle.
static final int WARNING_DIALOG
Константа, используемая для свойства windowDecorationStyle.

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

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

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

accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT

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

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

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

Конструктор Описание
JRootPane()
Создаёт JRootPane, настраивая его glassPane, layeredPane и contentPane.

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

Модификатор и тип Метод Описание
protected void addImpl(Component comp, Object constraints, int index)
Переопределён для фиксации положения стеклянного компонента в качестве дочернего компонента с индексом 0.
protected Container createContentPane()
Вызывается методами-конструкторами для создания панели contentPane по умолчанию.
protected Component createGlassPane()
Вызывается методами-конструкторами для создания glassPane по умолчанию.
protected JLayeredPane createLayeredPane()
Вызывается методами-конструкторами для создания layeredPane по умолчанию.
protected LayoutManager createRootLayout()
Вызывается методами-конструкторами для создания layoutManager по умолчанию.
AccessibleContext getAccessibleContext()
Возвращает AccessibleContext, связанный с этим JRootPane.
Container getContentPane()
Возвращает панель содержимого — контейнер, содержащий компоненты, родителем которых является корневая панель.
JButton getDefaultButton()
Возвращает значение свойства defaultButton.
Component getGlassPane()
Возвращает текущую стеклянную панель этого JRootPane.
JMenuBar getJMenuBar()
Возвращает строку меню из многослойной панели.
JLayeredPane getLayeredPane()
Возвращает многослойную панель, используемую корневой панелью.
JMenuBar getMenuBar()
Устарело.
Начиная с версии Swing 1.0.3 заменён на getJMenuBar().
RootPaneUI getUI()
Возвращает объект L&F, который отображает этот компонент.
String getUIClassID()
Возвращает строку с именем класса L&F, который отображает этот компонент.
int getWindowDecorationStyle()
Возвращает константу, определяющую тип оформления окна, которое предоставляет JRootPane.
boolean isOptimizedDrawingEnabled()
glassPane и contentPane имеют одинаковые границы, а значит, JRootPane не размещает дочерние компоненты плиткой, поэтому метод должен возвращать false.
boolean isValidateRoot()
Если потомок этого JRootPane вызывает revalidate, выполняет проверку начиная с этого компонента и ниже.
protected String paramString()
Возвращает строковое представление этого JRootPane.
void setContentPane(Container content)
Задаёт панель содержимого — контейнер, содержащий компоненты, родителем которых является корневая панель.
void setDefaultButton(JButton defaultButton)
Задаёт свойство defaultButton, определяющее текущую кнопку по умолчанию для этого JRootPane.
void setDoubleBuffered(boolean aFlag)
Задаёт, должен ли этот компонент использовать буфер для отрисовки.
void setGlassPane(Component glass)
Задаёт указанный Component в качестве стеклянной панели этой корневой панели.
void setJMenuBar(JMenuBar menu)
Добавляет строку меню, используемую в многослойной панели, или заменяет её.
void setLayeredPane(JLayeredPane layered)
Задаёт многослойную панель для корневой панели.
void setMenuBar(JMenuBar menu)
Устарело.
Начиная с версии Swing 1.0.3 заменён на setJMenuBar(JMenuBar menu).
void setUI(RootPaneUI ui)
Задаёт объект L&F, который отображает этот компонент.
void setWindowDecorationStyle(int windowDecorationStyle)
Задаёт тип оформления окна (например, рамки, элементы управления закрытием окна, заголовок и т. д.), которое должен предоставлять JRootPane.
void updateUI()
Сбрасывает свойство UI к значению из текущего оформления.

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

addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, 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, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, 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, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update

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

add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, 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, setLayout, transferFocusDownCycle, validate, validateTree

Методы, объявленные в классе 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, imageUpdate, 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

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

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

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

NONE

public static final int NONE
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane не должна предоставлять никакого оформления окна.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

FRAME

public static final int FRAME
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane должна предоставлять оформление, подходящее для Frame.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

PLAIN_DIALOG

public static final int PLAIN_DIALOG
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane должна предоставлять оформление, подходящее для диалогового окна.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

INFORMATION_DIALOG

public static final int INFORMATION_DIALOG
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane должна предоставлять оформление, подходящее для диалогового окна, используемого для отображения информационного сообщения.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

ERROR_DIALOG

public static final int ERROR_DIALOG
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane должна предоставлять оформление, подходящее для диалогового окна, используемого для отображения сообщения об ошибке.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

COLOR_CHOOSER_DIALOG

public static final int COLOR_CHOOSER_DIALOG
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane должна предоставлять оформление, подходящее для диалогового окна, используемого для отображения JColorChooser.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

FILE_CHOOSER_DIALOG

public static final int FILE_CHOOSER_DIALOG
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane должна предоставлять оформление, подходящее для диалогового окна, используемого для отображения JFileChooser.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

QUESTION_DIALOG

public static final int QUESTION_DIALOG
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane должна предоставлять оформление, подходящее для диалогового окна, в котором пользователю задается вопрос.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

WARNING_DIALOG

public static final int WARNING_DIALOG
Константа, используемая для свойства windowDecorationStyle. Указывает, что JRootPane должна предоставлять оформление, подходящее для диалогового окна, используемого для отображения предупреждения.
Начиная с версии:
1.4
См. также:
  • Значения констант полей

menuBar

protected JMenuBar menuBar
Строка меню.

contentPane

protected Container contentPane
Панель содержимого.

layeredPane

protected JLayeredPane layeredPane
Многослойная панель, управляющая строкой меню и панелью содержимого.

glassPane

protected Component glassPane
Стеклянная панель, расположенная поверх строки меню и панели содержимого, благодаря чему она может перехватывать движения мыши и другие события.

defaultButton

protected JButton defaultButton
Кнопка, которая активируется, когда панель находится в фокусе и происходит действие, специфичное для пользовательского интерфейса, например нажатие клавиши Enter.

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

JRootPane

public JRootPane()
Создает JRootPane, настраивая его glassPane, layeredPane и contentPane.

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

setDoubleBuffered

public void setDoubleBuffered(boolean aFlag)
Устанавливает, должен ли этот компонент использовать буфер для рисования. Если установлено значение true, все рисование этого компонента будет выполняться в буфере рисования вне экрана. Затем содержимое буфера рисования вне экрана будет скопировано на экран. Если Component буферизуется и один из его предков также буферизуется, будет использоваться буфер предка.
Переопределяет:
setDoubleBuffered в классе JComponent
Параметры:
aFlag — если значение true, для этого компонента включается двойная буферизация
Начиная с версии:
1.6

getWindowDecorationStyle

public int getWindowDecorationStyle()
Возвращает константу, указывающую тип оформления окна, предоставляемого JRootPane.
Возвращает:
Одно из значений NONE, FRAME, PLAIN_DIALOG, INFORMATION_DIALOG, ERROR_DIALOG, COLOR_CHOOSER_DIALOG, FILE_CHOOSER_DIALOG, QUESTION_DIALOG или WARNING_DIALOG.
Начиная с версии:
1.4
См. также:
  • setWindowDecorationStyle(int)

setWindowDecorationStyle

@BeanProperty(expert=true, visualUpdate=true, enumerationValues={"JRootPane.NONE","JRootPane.FRAME","JRootPane.PLAIN_DIALOG","JRootPane.INFORMATION_DIALOG","JRootPane.ERROR_DIALOG","JRootPane.COLOR_CHOOSER_DIALOG","JRootPane.FILE_CHOOSER_DIALOG","JRootPane.QUESTION_DIALOG","JRootPane.WARNING_DIALOG"}, description="Identifies the type of Window decorations to provide") public void setWindowDecorationStyle(int windowDecorationStyle)
Устанавливает тип оформления окна (например, рамки, элементы управления закрытием окна, заголовок и т. д.), которое должен предоставлять JRootPane. По умолчанию оформление окна не предоставляется (NONE).

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

Параметры:
windowDecorationStyle — константа, определяющая предоставляемое оформление окна.
Вызывает исключение:
IllegalArgumentException — если style не является одним из значений: NONE, FRAME, PLAIN_DIALOG, INFORMATION_DIALOG, ERROR_DIALOG, COLOR_CHOOSER_DIALOG, FILE_CHOOSER_DIALOG, QUESTION_DIALOG или WARNING_DIALOG.
Начиная с версии:
1.4
См. также:
  • JDialog.setDefaultLookAndFeelDecorated(boolean)
  • JFrame.setDefaultLookAndFeelDecorated(boolean)
  • LookAndFeel.getSupportsWindowDecorations()

getUI

public RootPaneUI getUI()
Возвращает объект L&F, который отображает этот компонент.
Переопределяет:
getUI в классе JComponent
Возвращает:
объект LabelUI
Начиная с версии:
1.3

setUI

@BeanProperty(expert=true, hidden=true, visualUpdate=true, description="The UI object that implements the Component's LookAndFeel.") public void setUI(RootPaneUI ui)
Устанавливает объект L&F, который отображает этот компонент.
Параметры:
ui — объект L&F LabelUI
Начиная с версии:
1.3
См. также:
  • UIDefaults.getUI(JComponent)

updateUI

public void updateUI()
Сбрасывает свойство UI, устанавливая для него значение из текущего стиля оформления.
Переопределяет:
updateUI в классе JComponent
См. также:
  • JComponent.updateUI()

getUIClassID

public String getUIClassID()
Возвращает строку, указывающую имя класса L&F, который отображает этот компонент.
Переопределяет:
getUIClassID в классе JComponent
Возвращает:
строку "RootPaneUI"
См. также:
  • JComponent.getUIClassID()
  • UIDefaults.getUI(JComponent)

createLayeredPane

protected JLayeredPane createLayeredPane()
Вызывается методами конструктора для создания layeredPane по умолчанию. По умолчанию создает новый JLayeredPane.
Возвращает:
layeredPane по умолчанию

createContentPane

protected Container createContentPane()
Вызывается методами конструктора для создания contentPane по умолчанию. По умолчанию этот метод создает новый JComponent и устанавливает BorderLayout в качестве его LayoutManager.
Возвращает:
contentPane по умолчанию

createGlassPane

protected Component createGlassPane()
Вызывается методами конструктора для создания glassPane по умолчанию. По умолчанию этот метод создает новый JComponent, видимость которого установлена в false.
Возвращает:
glassPane по умолчанию

createRootLayout

protected LayoutManager createRootLayout()
Вызывается методами конструктора для создания layoutManager по умолчанию.
Возвращает:
layoutManager по умолчанию.

setJMenuBar

public void setJMenuBar(JMenuBar menu)
Добавляет или заменяет строку меню, используемую в многослойной панели.
Параметры:
menu — JMenuBar для добавления

setMenuBar

@Deprecated public void setMenuBar(JMenuBar menu)
Устарело.
Начиная с версии Swing 1.0.3 заменено на setJMenuBar(JMenuBar menu).
Задает значение строки меню.
Параметры:
menu — JMenuBar для добавления.

getJMenuBar

public JMenuBar getJMenuBar()
Возвращает строку меню из многослойной панели.
Возвращает:
JMenuBar, используемую на панели

getMenuBar

@Deprecated public JMenuBar getMenuBar()
Устарело.
Начиная с версии Swing 1.0.3 заменено на getJMenuBar().
Возвращает значение строки меню.
Возвращает:
JMenuBar, используемую на панели

setContentPane

public void setContentPane(Container content)
Устанавливает панель содержимого — контейнер, в котором находятся компоненты, родительским элементом которых является корневая панель.

Архитектура рисования Swing требует наличия непрозрачного JComponent в иерархии контейнеров. Обычно эту роль выполняет панель содержимого. При замене панели содержимого рекомендуется использовать непрозрачный JComponent.

Параметры:
content — Container, используемая для содержимого компонентов
Вызывает исключение:
IllegalComponentStateException — (исключение времени выполнения), если параметр панели содержимого равен null

getContentPane

public Container getContentPane()
Возвращает панель содержимого — контейнер, в котором находятся компоненты, родительским элементом которых является корневая панель.
Возвращает:
Container, содержащую содержимое компонентов

setLayeredPane

public void setLayeredPane(JLayeredPane layered)
Устанавливает многослойную панель корневой панели. Многослойная панель обычно содержит панель содержимого и необязательную JMenuBar.
Параметры:
layered — JLayeredPane для использования
Вызывает исключение:
IllegalComponentStateException — (исключение времени выполнения), если параметр многослойной панели равен null

getLayeredPane

public JLayeredPane getLayeredPane()
Возвращает многослойную панель, используемую корневой панелью. Многослойная панель обычно содержит панель содержимого и необязательную JMenuBar.
Возвращает:
текущую используемую JLayeredPane

setGlassPane

public void setGlassPane(Component glass)
Назначает указанную Component стеклянной панелью этой корневой панели. Стеклянная панель обычно должна быть легковесным прозрачным компонентом, поскольку она становится видимой, когда корневой панели требуется перехватывать события ввода.

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

  root.setGlassPane(newGlassPane);
  newGlassPane.setVisible(true);
или:
  root.getGlassPane().setVisible(true);
  root.setGlassPane(newGlassPane);
Параметры:
glass — Component, используемая в качестве стеклянной панели этого JRootPane
Вызывает исключение:
NullPointerException — если параметр glass равен null

getGlassPane

public Component getGlassPane()
Возвращает текущую стеклянную панель этого JRootPane.
Возвращает:
текущую стеклянную панель
См. также:
  • setGlassPane(Component)

isValidateRoot

public boolean isValidateRoot()
Если потомок этого JRootPane вызывает revalidate, проверка выполняется отсюда вниз.

Отложенные запросы на повторное размещение компонента и его потомков. Например, вызовы revalidate передаются вверх до JRootPane или JScrollPane, поскольку оба класса переопределяют isValidateRoot так, чтобы возвращать true.

Переопределяет:
isValidateRoot в классе JComponent
Возвращает:
true
См. также:
  • JComponent.isValidateRoot()
  • Container.isValidateRoot()

isOptimizedDrawingEnabled

public boolean isOptimizedDrawingEnabled()
glassPane и contentPane имеют одинаковые границы, а это означает, что JRootPane не размещает своих потомков плиткой и этот метод должен возвращать false. С другой стороны, glassPane обычно не видна, поэтому метод может возвращать true, если glassPane не видна. Следовательно, возвращаемое здесь значение зависит от видимости glassPane.
Переопределяет:
isOptimizedDrawingEnabled в классе JComponent
Возвращает:
true, если дочерние компоненты этого компонента не перекрываются

setDefaultButton

@BeanProperty(description="The button activated by default in this root pane") public void setDefaultButton(JButton defaultButton)
Устанавливает свойство defaultButton, определяющее текущую кнопку по умолчанию для этого JRootPane. Кнопка по умолчанию активируется при возникновении определенного пользовательским интерфейсом события активации (обычно нажатия клавиши Enter) в корневой панели, независимо от того, находится ли кнопка в фокусе клавиатуры (если только другой компонент в корневой панели не перехватывает событие активации, например JTextPane). Для работы активации по умолчанию кнопка должна быть доступным потомком корневой панели в момент активации. Чтобы удалить кнопку по умолчанию из этой корневой панели, установите для этого свойства значение null.
Параметры:
defaultButton — JButton, которая должна стать кнопкой по умолчанию
См. также:
  • JButton.isDefaultButton()

getDefaultButton

public JButton getDefaultButton()
Возвращает значение свойства defaultButton.
Возвращает:
JButton, которая в данный момент является кнопкой по умолчанию
См. также:
  • setDefaultButton(JButton)

addImpl

protected void addImpl(Component comp, Object constraints, int index)
Переопределен для обеспечения расположения стеклянного компонента в качестве дочернего компонента с индексом ноль.
Переопределяет:
addImpl в классе Container
Параметры:
comp — компонент, который нужно дополнить
constraints — ограничения, которые необходимо соблюдать
index — индекс
См. также:
  • Container.add(Component)
  • Container.add(Component, int)
  • Container.add(Component, java.lang.Object)
  • Container.invalidate()
  • LayoutManager
  • LayoutManager2

paramString

protected String paramString()
Возвращает строковое представление этого JRootPane. Этот метод предназначен только для отладки; содержимое и формат возвращаемой строки могут различаться в разных реализациях. Возвращаемая строка может быть пустой, но не может быть null.
Переопределяет:
paramString в классе JComponent
Возвращает:
строковое представление этого JRootPane.

getAccessibleContext

public AccessibleContext getAccessibleContext()
Возвращает AccessibleContext, связанный с этим JRootPane. Для корневых панелей AccessibleContext имеет вид AccessibleJRootPane. При необходимости создается новый экземпляр AccessibleJRootPane.
Определен в:
getAccessibleContext в интерфейсе Accessible
Переопределяет:
getAccessibleContext в классе Component
Возвращает:
объект AccessibleJRootPane, выполняющий роль AccessibleContext этого JRootPane

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/javax/swing/JRootPane.html

Spec-Zone.ru

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