JavaTM Platform
Standard Ed. 6

javax.swing
インタフェース RootPaneContainer

既知の実装クラスの一覧:
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) として解釈されます。

便宜上、JFrameJDialogJWindowJApplet、および JInternalFrame はデフォルトで addremove、および setLayout メソッドのすべての呼び出しを contentPane に転送します。つまり、次のように呼び出せます。  

 rootPaneContainer.add(component);
 
次のように記述する必要はありません。  
 rootPaneContainer.getContentPane().add(component);
 

JFrameJDialogJWindowJApplet、および JInternalFrame に対する add および setLayout メソッドの動作は、rootPaneCheckingEnabled プロパティーによって制御されます。このプロパティーが true (デフォルト) の場合は、これらのメソッドの呼び出しが contentPane に転送されます。 false の場合、これらのメソッドは RootPaneContainer で直接実行されます。このプロパティーはサブクラスのみを対象としているため、保護されています。

関連項目:
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 の 2 つの子があります。

戻り値:
このコンポーネントの単一の JRootPane の子
関連項目:
JRootPane

setContentPane

void setContentPane(Container contentPane)
「contentPane」は、アプリケーション固有のコンポーネントの一次コンテナです。アプリケーションでは、contentPane に子を追加したり、そのレイアウトマネージャーを設定したりします。

contentPane を null にすることはできません。

通常は、次のように実装されます。getRootPane().setContentPane(contentPane);

パラメータ:
contentPane - この JRootPane のコンテンツに使用する コンテナ
例外:
IllegalComponentStateException - コンテンツ区画パラメータが 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);

例外:
IllegalComponentStateException - 階層化区画パラメータが null の場合 (実行時例外)
関連項目:
getLayeredPane(), JRootPane.getLayeredPane()

getLayeredPane

JLayeredPane getLayeredPane()
layeredPane を返します。

戻り値:
layeredPane プロパティーの値
関連項目:
setLayeredPane(javax.swing.JLayeredPane)

setGlassPane

void setGlassPane(Component glassPane)
glassPane は常に rootPane の最初の子で、rootPane のレイアウトマネージャーによって、常に rootPane と同じ大きさであることが保証されます。また、デフォルトでは透過で、可視ではありません。glassPane を使用すると、リスナーを追加して glassPane を可視に設定することで、すべてのキーボードおよびマウス入力を一時的にグラブできます。 デフォルトでは、glassPane は可視ではありません。

glassPane を null に設定することはできません。

通常は、次のように実装されます。 getRootPane().setGlassPane(glassPane);

関連項目:
getGlassPane(), JRootPane.setGlassPane(java.awt.Component)

getGlassPane

Component getGlassPane()
glassPane を返します。

戻り値:
glassPane プロパティーの値
関連項目:
setGlassPane(java.awt.Component)

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。