- 既知のすべての実装クラス:
JApplet
,JDialog
,JFrame
,JInternalFrame
,JWindow
public interface RootPaneContainer
このインタフェースは、JRootPaneの子を1つ持つJDialog、JFrame、JWindow、JApplet、JInternalFrameなどのコンポーネントによって実装されます。 このインタフェースのメソッドは、JRootPaneプロパティのかわりをするだけです。たとえば、
getContentPane()
は通常は次のように実装されます。 public Container getContentPane() { return getRootPane().getContentPane(); }このインタフェースは、単一のJRootPaneを持つJFrameなどのコンポーネントを特別に処理するSwing GUIビルダーのマーカーとして機能します。 たとえばGUIビルダーでは、RootPaneContainerにコンポーネントをドロップすると、
frame.getContentPane().add(child)
として解釈されます。
便宜上、このインタフェースを実装する標準クラス(JFrame
、JDialog
、JWindow
、JApplet
、JInternalFrame
など)では、呼び出しがContentPane
の対応するメソッドに委譲されるようにadd
、remove
、setLayout
の各メソッドがオーバーライドされています。 たとえば、次のようにしてフレームに子コンポーネントを追加できます。
frame.add(child);次は使用しません。
frame.getContentPane().add(child);
JFrame
、JDialog
、JWindow
、JApplet
およびJInternalFrame
に対するadd
およびsetLayout
メソッドの動作は、rootPaneCheckingEnabled
プロパティによって制御されます。 このプロパティがtrue (デフォルト)の場合は、これらのメソッドの呼出しがcontentPane
に転送されます。falseの場合、これらのメソッドはRootPaneContainer
で直接実行されます。 このプロパティはサブクラスのみを対象としているため、保護されています。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明contentPaneを返します。glassPaneを返します。layeredPaneを返します。このコンポーネントの単一の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の2つの子があります。- 戻り値:
- このコンポーネントの単一のJRootPaneの子。
- 関連項目:
-
setContentPane
void setContentPane(Container contentPane) 「contentPane」は、アプリケーション固有のコンポーネントのプライマリ・コンテナです。 アプリケーションでは、contentPaneに子を追加したり、そのレイアウト・マネージャを設定したりします。contentPaneをnullにすることはできません。
通常は、次のように実装されます。
getRootPane().setContentPane(contentPane);
- パラメータ:
contentPane
- このJRootPaneのコンテンツに使用するコンテナ- 例外:
IllegalComponentStateException
- コンテンツ・ペイン・パラメータがnullの場合(実行時例外)- 関連項目:
-
getContentPane
-
setLayeredPane
void setLayeredPane(JLayeredPane layeredPane) contentPaneを管理するコンテナで、場合によってはメニュー・バーも管理します。 layeredPaneを利用できるのは、管理しているレイアウトではないRootPaneContainerに子を追加する下位オブジェクトです。 たとえば、内部ダイアログやドラッグ・アンド・ドロップ効果を持つコンポーネントなどです。layeredPaneをnullにすることはできません。
通常は、次のように実装されます。
getRootPane().setLayeredPane(layeredPane);
- パラメータ:
layeredPane
- レイヤード・ペイン- 例外:
IllegalComponentStateException
- 階層化ペイン・パラメータがnullの場合(実行時例外)- 関連項目:
-
getLayeredPane
-
setGlassPane
void setGlassPane(Component glassPane) glassPaneは常にrootPaneの最初の子で、rootPaneのレイアウト・マネージャによって、常にrootPaneと同じ大きさであることが保証されます。 また、デフォルトでは透過で、可視ではありません。 これを使用すると、リスナーを追加して可視に設定することで、すべてのキーボードおよびマウス入力を一時的にグラブできます。デフォルトでは、可視ではありません。glassPaneをnullに設定することはできません。
通常は、次のように実装されます。
getRootPane().setGlassPane(glassPane);
- パラメータ:
glassPane
- ガラス板- 関連項目:
-
getGlassPane
-