モジュール java.desktop
パッケージ java.awt

クラスFrame

java.lang.Object
すべての実装されたインタフェース:
ImageObserver, MenuContainer, Serializable, Accessible
直系の既知のサブクラス:
JFrame

public class Frame extends Window implements MenuContainer
Frameは、タイトルとボーダーを持つトップ・レベルのウィンドウです。

フレームのサイズには、ボーダー用として指定された領域が含まれます。 ボーダー領域の寸法はgetInsetsメソッドで取得できます。ただし、ボーダー領域の寸法はプラットフォームに依存するため、packまたはshowのどちらかを呼び出すことによりフレームを表示可能にしなければ有効なイン・セット値は取得できません。 ボーダー領域はフレーム全体のサイズに含まれているため、フレームの一部がボーダーに隠れてしまいます。このため、サブコンポーネントを描画および表示するための領域は、左上隅の位置が(insets.left, insets.top)であり、幅がwidth - (insets.left+insets.right)、高さがheight - (insets.top+insets.bottom)の矩形に制限されます。

フレームのデフォルト・レイアウトは、BorderLayoutです。

フレームはネイティブな装飾(FrameTitlebar)を持つことができ、setUndecoratedでこれを無効化できます。 フレームがdisplayableの状態でないときにだけ無効化できます。

マルチスクリーン環境では、Frame(GraphicsConfiguration)またはFrame(String title, GraphicsConfiguration)Frameを構築することにより、別のスクリーン・デバイス上にFrameを生成できます。 GraphicsConfigurationオブジェクトは、ターゲット画面デバイスのいずれかのGraphicsConfigurationオブジェクトです。

デスクトップ・エリアが、物理的に複数のスクリーン・デバイスにまたがる仮想デバイス・マルチスクリーン環境では、すべての設定の境界は仮想座標体系を基準にしています。 仮想座標体系の原点は物理的なプライマリ・スクリーンの左上隅にあります。 仮想デバイスのプライマリ・スクリーンの位置によっては、次の図に示す通り負の座標も可能です。

3つの物理的スクリーンと1つの物理的なプライマリ・スクリーンを含む仮想デバイスの図。 プライマリ・スクリーンは(0,0)座標を示し、ほかの物理的スクリーンは(-80,-100)座標を示す。

このような環境では、setLocationを呼び出すとき、このメソッドに仮想座標を渡す必要があります。 同様に、FramegetLocationOnScreenを呼び出すと、仮想デバイス座標が返されます。 仮想座標系内の原点を検索するには、GraphicsConfigurationgetBoundsメソッドを呼び出します。

次のコードでは、Frameの位置を対応するGraphicsConfigurationの物理的スクリーンの原点を基準にして(10, 10)に設定します。 GraphicsConfigurationの境界が考慮されない場合、Frameの位置は仮想座標系を基準にして(10, 10)に設定され、指定されたGraphicsConfigurationの物理的スクリーンとは異なる可能性のある物理的なプライマリ・スクリーンに表示されます。

      Frame f = new Frame(GraphicsConfiguration gc);
      Rectangle bounds = gc.getBounds();
      f.setLocation(10 + bounds.x, 10 + bounds.y);
 

フレームは次の型のWindowEventを生成できます。

  • WINDOW_OPENED
  • WINDOW_CLOSING:
    このイベントを処理する際に、プログラムが明示的にウィンドウの非表示も破棄も行わない場合、ウィンドウ・クローズの操作は取り消されます。
  • WINDOW_CLOSED
  • WINDOW_ICONIFIED
  • WINDOW_DEICONIFIED
  • WINDOW_ACTIVATED
  • WINDOW_DEACTIVATED
  • WINDOW_GAINED_FOCUS
  • WINDOW_LOST_FOCUS
  • WINDOW_STATE_CHANGED

導入されたバージョン:
1.0
関連項目: