Интерфейс RootPaneContainer
- Все известные реализующие классы:
-
JApplet,JDialog,JFrame,JInternalFrame,JWindow
public interface RootPaneContainer
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
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Container |
getContentPane() |
Возвращает contentPane. |
Component |
getGlassPane() |
Возвращает glassPane. |
JLayeredPane |
getLayeredPane() |
Возвращает layeredPane. |
JRootPane |
getRootPane() |
Возвращает единственного потомка JRootPane этого компонента. |
void |
setContentPane |
contentPane — основной контейнер для компонентов, специфичных для приложения. |
void |
setGlassPane |
glassPane всегда является первым потомком rootPane, и менеджер компоновки rootPane гарантирует, что он всегда имеет такие же размеры, как и rootPane. |
void |
setLayeredPane |
Контейнер, управляющий contentPane и в некоторых случаях строкой меню. |
Подробное описание методов
getRootPane
JRootPane getRootPane()
- Возвращает:
- единственного потомка JRootPane этого компонента.
- См. также:
setContentPane
void setContentPane(Container contentPane)
contentPane не может быть null.
Обычно реализуется с помощью getRootPane().setContentPane(contentPane);
- Параметры:
-
contentPane— контейнер, используемый для содержимого этого JRootPane - Исключение:
-
IllegalComponentStateException— (исключение времени выполнения) если параметр contentPane равен null - См. также:
getContentPane
Container getContentPane()
- Возвращает:
- значение свойства contentPane.
- См. также:
setLayeredPane
void setLayeredPane(JLayeredPane layeredPane)
layeredPane не может быть null.
Обычно реализуется с помощью
getRootPane().setLayeredPane(layeredPane);
- Параметры:
-
layeredPane— layeredPane - Исключение:
-
IllegalComponentStateException— (исключение времени выполнения) если параметр layeredPane равен null - См. также:
getLayeredPane
JLayeredPane getLayeredPane()
- Возвращает:
- значение свойства layeredPane.
- См. также:
setGlassPane
void setGlassPane(Component glassPane)
glassPane не может быть null.
Обычно реализуется с помощью getRootPane().setGlassPane(glassPane);
- Параметры:
-
glassPane— glassPane - См. также:
getGlassPane
Component getGlassPane()
- Возвращает:
- значение свойства glassPane.
- См. также:
© 1993, 2023, 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/21/docs/api/java.desktop/javax/swing/RootPaneContainer.html