public interface RootPaneContainer
getContentPane()
是这样实现的:
public Container getContentPane() {
return getRootPane().getContentPane();
}
此界面作为Swing GUI构建器的标记 ,需要特别处理包含单个JRootPane的组件,如JFrame。
例如,在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
; 如果是虚假的,这些方法直接在RootPaneContainer
上操作。 该属性仅适用于子类,因此受保护。
Modifier and Type | Method and Description |
---|---|
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的容器,在某些情况下是一个菜单栏。
|
JRootPane getRootPane()
JRootPane
void setContentPane(Container contentPane)
contentPane可能不为null。
一般用getRootPane().setContentPane(contentPane);
contentPane
- 用于此JRootPane内容的容器
IllegalComponentStateException
- (运行时异常)如果内容窗格参数为空
JRootPane.getContentPane()
,
getContentPane()
Container getContentPane()
setContentPane(java.awt.Container)
void setLayeredPane(JLayeredPane layeredPane)
layeredPane可能不为空。
一般实行
getRootPane().setLayeredPane(layeredPane);
IllegalComponentStateException
- (运行时异常)如果分层窗格参数为空
getLayeredPane()
,
JRootPane.getLayeredPane()
JLayeredPane getLayeredPane()
setLayeredPane(javax.swing.JLayeredPane)
void setGlassPane(Component glassPane)
glassPane可能不为空。
一般用getRootPane().setGlassPane(glassPane);
Component getGlassPane()
setGlassPane(java.awt.Component)