Интерфейс RootPaneContainer

Все известные реализующие классы:
JApplet, JDialog, JFrame, JInternalFrame, JWindow
public interface RootPaneContainer

Этот интерфейс реализуется компонентами, имеющими единственного потомка JRootPane: JDialog, JFrame, JWindow, JApplet, JInternalFrame. Методы этого интерфейса — просто обёртки для свойств JRootPane, например, getContentPane() обычно реализуется так:

public Container getContentPane() {
         return getRootPane().getContentPane();
     }
Этот интерфейс служит маркером для конструкторов Swing GUI, которым необходимо обрабатывать компоненты вроде JFrame, содержащие единственный JRootPane, особым образом. Например, в конструкторе GUI, помещение компонента на RootPaneContainer будет интерпретироваться как frame.getContentPane().add(child).

Для удобства стандартные классы, реализующие этот интерфейс (такие как JFrame, JDialog, JWindow, JApplet, и JInternalFrame) переопределяют свои методы add, remove, и setLayout, передавая вызовы соответствующим методам ContentPane. Например, вы можете добавить дочерний компонент к фрейму следующим образом:

frame.add(child);
вместо:
frame.getContentPane().add(child);

Поведение методов add и setLayout для JFrame, JDialog, JWindow, JApplet и JInternalFrame контролируется свойством rootPaneCheckingEnabled. Если это свойство имеет значение true (по умолчанию), вызовы этих методов перенаправляются в contentPane; если false, эти методы работают непосредственно с RootPaneContainer. Это свойство предназначено только для подклассов и поэтому защищено.

С момента:
1.2
См. также:
JRootPane, JFrame, JDialog, JWindow, JApplet, JInternalFrame

Методы

Модификатор и тип Метод Описание
Container getContentPane()

Возвращает contentPane.

Component getGlassPane()

Возвращает glassPane.

JLayeredPane getLayeredPane()

Возвращает layeredPane.

JRootPane getRootPane()

Возвращает единственного дочернего компонента JRootPane этого компонента.

void setContentPane​(Container contentPane)

«contentPane» — это основной контейнер для компонентов, специфичных для приложения.

void setGlassPane​(Component glassPane)

glassPane всегда является первым потомком rootPane, и менеджер компоновки rootPane гарантирует, что он всегда имеет тот же размер, что и rootPane.

void setLayeredPane​(JLayeredPane layeredPane)

Контейнер, управляющий contentPane и, в некоторых случаях, строкой меню.

Методы

getRootPane

JRootPane getRootPane()

Возвращает единственного дочернего компонента JRootPane этого компонента. Обычная реализация этого интерфейса будет иметь все остальные методы, непрямые через этот. У rootPane два потомка: glassPane и layeredPane.

Возвращает:
единственного дочернего компонента JRootPane этого компонента.
См. также:
JRootPane

setContentPane

void setContentPane(Container contentPane)

«contentPane» — это основной контейнер для компонентов, специфичных для приложения. Приложения должны добавлять потомков в contentPane, устанавливать его менеджер компоновки и так далее.

contentPane не может быть null.

Обычно реализуется с getRootPane().setContentPane(contentPane);

Параметры:
contentPane - контейнер для содержимого этого JRootPane
Исключения:
IllegalComponentStateException - (исключение времени выполнения) если параметр contentPane равен null
См. также:
JRootPane.getContentPane(), getContentPane()

getContentPane

Container getContentPane()

Возвращает contentPane.

Возвращает:
значение свойства contentPane.
См. также:
setContentPane(java.awt.Container)

setLayeredPane

void setLayeredPane(JLayeredPane layeredPane)

Контейнер, управляющий contentPane и, в некоторых случаях, строкой меню. layeredPane может быть использован потомками, которые хотят добавить потомка в RootPaneContainer, не управляемого компоновкой. Например, внутренний диалог или компонент эффекта перетаскивания.

layeredPane не может быть null.

Обычно реализуется с

getRootPane().setLayeredPane(layeredPane);
Параметры:
layeredPane - layered pane
Исключения:
IllegalComponentStateException - (исключение времени выполнения) если параметр layered pane равен null
См. также:
getLayeredPane(), JRootPane.getLayeredPane()

getLayeredPane

JLayeredPane getLayeredPane()

Возвращает layeredPane.

Возвращает:
значение свойства layeredPane.
См. также:
setLayeredPane(javax.swing.JLayeredPane)

setGlassPane

void setGlassPane(Component glassPane)

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

glassPane не может быть null.

Обычно реализуется с getRootPane().setGlassPane(glassPane);

Параметры:
glassPane - glass pane
См. также:
getGlassPane(), JRootPane.setGlassPane(java.awt.Component)

getGlassPane

Component getGlassPane()

Возвращает glassPane.

Возвращает:
значение свойства glassPane.
См. также:
setGlassPane(java.awt.Component)

© 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/RootPaneContainer.html

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