|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
public class Frame
Frame は、タイトルとボーダーを持つトップレベルウィンドウです。
フレームのサイズには、ボーダー用として指定された領域が含まれます。ボーダー領域の寸法は getInsets メソッドで取得できます。 ただし、ボーダー領域の寸法はプラットフォームに依存するため、pack または show のどちらかを呼び出すことによりフレームを表示可能にしなければ正確なインセット値は取得できません。ボーダー領域はフレーム全体のサイズに含まれているため、フレームの一部がボーダーに隠れてしまいます。 このため、サブコンポーネントを描画および表示するための領域は、左上隅の位置が (insets.left, insets.top) であり、幅が width - (insets.left + insets.right)、高さが height - (insets.top + insets.bottom) の矩形に制限されます。
フレームのデフォルトレイアウトは、BorderLayout です。
フレームはネイティブな装飾 (Frame と Titlebar) を持つことができ、setUndecorated でこれを無効化できます。フレームが displayable の状態でないときにだけ無効化できます。
マルチスクリーン環境では、Frame(GraphicsConfiguration) または Frame(String title, GraphicsConfiguration) で Frame を構築し、別々のスクリーンデバイス上に Frame を生成できます。GraphicsConfiguration オブジェクトはターゲットスクリーンデバイスの GraphicsConfiguration オブジェクトの 1 つです。
デスクトップエリアが、物理的に複数のスクリーンデバイスにまたがる仮想デバイスマルチスクリーン環境では、すべての設定の境界は仮想座標体系を基準にしています。仮想座標体系の原点は物理的なプライマリスクリーンの左上隅にあります。仮想デバイスのプライマリスクリーンの位置によっては、次の図に示すとおり負の座標も可能です。
そのような環境では、setLocation を呼び出すにはこのメソッドに仮想座標を渡す必要があります。同様に、Frame 上で getLocationOnScreen を呼び出すと、仮想デバイス座標を返します。仮想座標体系の原点を検索するには、GraphicsConfiguration の getBounds メソッドを呼び出します。
次のコードでは、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
WindowEvent,
Window.addWindowListener(java.awt.event.WindowListener),
直列化された形式| 入れ子のクラスの概要 | |
|---|---|
protected class |
Frame.AccessibleAWTFrame
このクラスは Frame クラス用のユーザー補助機能のサポートを実装しています。 |
| クラス java.awt.Window から継承された入れ子のクラス/インタフェース |
|---|
Window.AccessibleAWTWindow |
| クラス java.awt.Container から継承された入れ子のクラス/インタフェース |
|---|
Container.AccessibleAWTContainer |
| クラス java.awt.Component から継承された入れ子のクラス/インタフェース |
|---|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy |
| フィールドの概要 | |
|---|---|
static int |
CROSSHAIR_CURSOR
推奨されていません。 Cursor.CROSSHAIR_CURSOR で置き換えられています。 |
static int |
DEFAULT_CURSOR
推奨されていません。 Cursor.DEFAULT_CURSOR で置き換えられています。 |
static int |
E_RESIZE_CURSOR
推奨されていません。 Cursor.E_RESIZE_CURSOR で置き換えられています。 |
static int |
HAND_CURSOR
推奨されていません。 Cursor.HAND_CURSOR で置き換えられています。 |
static int |
ICONIFIED
この状態ビットはフレームがアイコン化されていることを示します。 |
static int |
MAXIMIZED_BOTH
この状態ビットマスクは、フレームが全画面表示、つまり水平および垂直の両方向で最大化されていることを示します。 |
static int |
MAXIMIZED_HORIZ
この状態ビットはフレームが水平方向に最大化されていることを示します。 |
static int |
MAXIMIZED_VERT
この状態ビットはフレームが垂直方向に最大化されていることを示します。 |
static int |
MOVE_CURSOR
推奨されていません。 Cursor.MOVE_CURSOR で置き換えられています。 |
static int |
N_RESIZE_CURSOR
推奨されていません。 Cursor.N_RESIZE_CURSOR で置き換えられています。 |
static int |
NE_RESIZE_CURSOR
推奨されていません。 Cursor.NE_RESIZE_CURSOR で置き換えられています。 |
static int |
NORMAL
フレームが「通常の」状態です。 |
static int |
NW_RESIZE_CURSOR
推奨されていません。 Cursor.NW_RESIZE_CURSOR で置き換えられています。 |
static int |
S_RESIZE_CURSOR
推奨されていません。 Cursor.S_RESIZE_CURSOR で置き換えられています。 |
static int |
SE_RESIZE_CURSOR
推奨されていません。 Cursor.SE_RESIZE_CURSOR で置き換えられています。 |
static int |
SW_RESIZE_CURSOR
推奨されていません。 Cursor.SW_RESIZE_CURSOR で置き換えられています。 |
static int |
TEXT_CURSOR
推奨されていません。 Cursor.TEXT_CURSOR で置き換えられています。 |
static int |
W_RESIZE_CURSOR
推奨されていません。 Cursor.W_RESIZE_CURSOR で置き換えられています。 |
static int |
WAIT_CURSOR
推奨されていません。 Cursor.WAIT_CURSOR で置き換えられています。 |
| クラス java.awt.Component から継承されたフィールド |
|---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| インタフェース java.awt.image.ImageObserver から継承されたフィールド |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| コンストラクタの概要 | |
|---|---|
Frame()
初期状態で可視ではない Frame の新しいインスタンスを生成します。 |
|
Frame(GraphicsConfiguration gc)
指定された GraphicsConfiguration で、初期状態で可視ではない新しい Frame を構築します。 |
|
Frame(String title)
指定されたタイトルで、初期状態で可視ではない新しい Frame オブジェクトを構築します。 |
|
Frame(String title,
GraphicsConfiguration gc)
指定されたタイトルと GraphicsConfiguration で、最初は不可視である新しい Frame オブジェクトを構築します。 |
|
| メソッドの概要 | |
|---|---|
void |
addNotify()
ネイティブスクリーンリソースに接続することにより、この Frame を表示可能にします。 |
AccessibleContext |
getAccessibleContext()
このフレームに関連した AccessibleContext を返します。 |
int |
getCursorType()
推奨されていません。 JDK Version 1.1 以降は、 Component.getCursor() に置き換えられました。 |
int |
getExtendedState()
このフレームの状態を返します。 |
static Frame[] |
getFrames()
このアプリケーションで生成されたすべての Frame を格納する配列を返します。 |
Image |
getIconImage()
このフレームのアイコンとして表示されるイメージを返します。 |
Rectangle |
getMaximizedBounds()
このフレームの最大化された境界を返します。 |
MenuBar |
getMenuBar()
このフレームのメニューバーを返します。 |
int |
getState()
このフレームの状態を返します (現在は使用されません)。 |
String |
getTitle()
フレームのタイトルを返します。 |
boolean |
isResizable()
ユーザーがこのフレームのサイズを変更できるかどうかを示します。 |
boolean |
isUndecorated()
デフォルトではすべてのフレームが装飾を持ちます。 |
protected String |
paramString()
この Frame の状態を表す文字列を返します。 |
void |
remove(MenuComponent m)
指定されたメニューバーをこのフレームから削除します。 |
void |
removeNotify()
ネイティブスクリーンリソースへの接続を削除することにより、この Frame を非表示にします。 |
void |
setCursor(int cursorType)
推奨されていません。 JDK Version 1.1 以降は、 Component.setCursor(Cursor) に置き換えられました。 |
void |
setExtendedState(int state)
このフレームの状態を設定します。 |
void |
setIconImage(Image image)
このウィンドウのアイコンとして表示されるイメージを設定します。 |
void |
setMaximizedBounds(Rectangle bounds)
このフレームの最大化された境界を設定します。 |
void |
setMenuBar(MenuBar mb)
このフレームのメニューバーを、指定されたメニューバーに設定します。 |
void |
setResizable(boolean resizable)
ユーザーがこのフレームのサイズを変更できるかどうかを設定します。 |
void |
setState(int state)
このフレームの状態を設定します (現在は使用されません)。 |
void |
setTitle(String title)
このフレームのタイトルを、指定された文字列に設定します。 |
void |
setUndecorated(boolean undecorated)
このフレームの装飾の有効化と無効化を切り替えます。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| インタフェース java.awt.MenuContainer から継承されたメソッド |
|---|
getFont, postEvent |
| フィールドの詳細 |
|---|
@Deprecated public static final int DEFAULT_CURSOR
Cursor.DEFAULT_CURSOR で置き換えられています。@Deprecated public static final int CROSSHAIR_CURSOR
Cursor.CROSSHAIR_CURSOR で置き換えられています。@Deprecated public static final int TEXT_CURSOR
Cursor.TEXT_CURSOR で置き換えられています。@Deprecated public static final int WAIT_CURSOR
Cursor.WAIT_CURSOR で置き換えられています。@Deprecated public static final int SW_RESIZE_CURSOR
Cursor.SW_RESIZE_CURSOR で置き換えられています。@Deprecated public static final int SE_RESIZE_CURSOR
Cursor.SE_RESIZE_CURSOR で置き換えられています。@Deprecated public static final int NW_RESIZE_CURSOR
Cursor.NW_RESIZE_CURSOR で置き換えられています。@Deprecated public static final int NE_RESIZE_CURSOR
Cursor.NE_RESIZE_CURSOR で置き換えられています。@Deprecated public static final int N_RESIZE_CURSOR
Cursor.N_RESIZE_CURSOR で置き換えられています。@Deprecated public static final int S_RESIZE_CURSOR
Cursor.S_RESIZE_CURSOR で置き換えられています。@Deprecated public static final int W_RESIZE_CURSOR
Cursor.W_RESIZE_CURSOR で置き換えられています。@Deprecated public static final int E_RESIZE_CURSOR
Cursor.E_RESIZE_CURSOR で置き換えられています。@Deprecated public static final int HAND_CURSOR
Cursor.HAND_CURSOR で置き換えられています。@Deprecated public static final int MOVE_CURSOR
Cursor.MOVE_CURSOR で置き換えられています。public static final int NORMAL
setExtendedState(int),
getExtendedState(),
定数フィールド値public static final int ICONIFIED
setExtendedState(int),
getExtendedState(),
定数フィールド値public static final int MAXIMIZED_HORIZ
setExtendedState(int),
getExtendedState(),
定数フィールド値public static final int MAXIMIZED_VERT
setExtendedState(int),
getExtendedState(),
定数フィールド値public static final int MAXIMIZED_BOTH
MAXIMIZED_VERT | MAXIMIZED_HORIZ の簡易エイリアスです。
フレームが全画面表示されているかどうかを正しく判定するコーディングはこうなります。
(state & Frame.MAXIMIZED_BOTH) == Frame.MAXIMIZED_BOTH
フレームが水平または垂直のどちらかで最大化されているかどうかを判定するコーディングはこうなります。
(state & Frame.MAXIMIZED_BOTH) != 0
setExtendedState(int),
getExtendedState(),
定数フィールド値| コンストラクタの詳細 |
|---|
public Frame()
throws HeadlessException
Frame の新しいインスタンスを生成します。Frame のタイトルは空です。
HeadlessException - GraphicsEnvironment.isHeadless() が
true を返す場合GraphicsEnvironment.isHeadless(),
Component.setSize(int, int),
Component.setVisible(boolean)public Frame(GraphicsConfiguration gc)
GraphicsConfiguration で、初期状態で可視ではない新しい Frame を構築します。
gc - ターゲットスクリーンデバイスの GraphicsConfiguration。gc が null の場合は、GraphicsConfiguration をデフォルトとみなす
IllegalArgumentException - gc が
スクリーンデバイスのものではない場合
HeadlessException - GraphicsEnvironment.isHeadless() が
true を返す場合GraphicsEnvironment.isHeadless()
public Frame(String title)
throws HeadlessException
Frame オブジェクトを構築します。
title - フレームのボーダーに表示されるタイトル。
null 値は、
空の文字列 "" として扱われる
HeadlessException - GraphicsEnvironment.isHeadless() が
true を返す場合GraphicsEnvironment.isHeadless(),
Component.setSize(int, int),
Component.setVisible(boolean),
GraphicsConfiguration.getBounds()
public Frame(String title,
GraphicsConfiguration gc)
GraphicsConfiguration で、最初は不可視である新しい Frame オブジェクトを構築します。
title - フレームのボーダーに表示されるタイトル。
null 値は、
空の文字列 "" として扱われるgc - ターゲットスクリーンデバイスの GraphicsConfiguration。gc が null の場合は、GraphicsConfiguration をデフォルトとみなす
IllegalArgumentException - gc が
がスクリーンデバイスのものではない場合
HeadlessException - GraphicsEnvironment.isHeadless() が
true を返す場合GraphicsEnvironment.isHeadless(),
Component.setSize(int, int),
Component.setVisible(boolean),
GraphicsConfiguration.getBounds()| メソッドの詳細 |
|---|
public void addNotify()
Window 内の addNotifyComponent.isDisplayable(),
removeNotify()public String getTitle()
setTitle(String)public void setTitle(String title)
title - フレームのボーダーに表示されるタイトル。
null 値は、
空の文字列 "" として扱われるgetTitle()public Image getIconImage()
このメソッドは現在無効であり、下位互換のためだけに残されています。代わりに、Window.getIconImages() を使用してください。
複数のイメージからなるリストが Window のアイコンとして指定されていた場合、このメソッドは、リストの最初の項目を返します。
nullsetIconImage(Image),
Window.getIconImages(),
Window.setIconImages(java.util.List extends java.awt.Image>)public void setIconImage(Image image)
ウィンドウのアイコンとして単一イメージを指定するために、このメソッドを setIconImages() の代わりに使用できます。
たとえば次の文を考えてみます。
setIconImage(image);
これは、次と同じです。
ArrayList imageList = new ArrayList();
imageList.add(image);
setIconImages(imageList);
注:ネイティブのウィンドウ管理システムでは、ウィンドウを表すために、コンテキスト (ウィンドウ装飾、ウィンドウリスト、タスクバーなど) に応じてさまざまな寸法のさまざまなイメージを使用する場合があります。また、すべてのコンテキストで単一のイメージを使用することも、まったくイメージを使用しないこともあります。
Window 内の setIconImageimage - 表示されるアイコンイメージWindow.setIconImages(java.util.List extends java.awt.Image>),
Window.getIconImages()public MenuBar getMenuBar()
nullsetMenuBar(MenuBar)public void setMenuBar(MenuBar mb)
mb - 設定されるメニューバー。
このパラメータが null の場合、
フレーム上の既存のメニューバーはすべて削除されるgetMenuBar()public boolean isResizable()
true、
そうでない場合は falsesetResizable(boolean)public void setResizable(boolean resizable)
resizable - このフレームがサイズ変更可能な場合は true、
そうでない場合は falseisResizable()public void setState(int state)
旧バージョンの JDK では、フレームの状態は NORMAL か ICONIFIED のどちらかでした。JDK 1.4 からはより多くのフレーム状態がサポートされ、ビットマスクで状態が表されるようになりました。
以前のプログラムとの互換性のため、このメソッドは Frame.NORMAL と Frame.ICONIFIED を受け付けますが、これはフレームのアイコン化の状態だけを変更し、フレームがほかの状態の場合は影響を受けません。
state - Frame.NORMAL または
Frame.ICONIFIED のどちらかgetState(),
setExtendedState(int)public void setExtendedState(int state)
NORMAL ICONIFIED
MAXIMIZED_HORIZ
MAXIMIZED_VERT
MAXIMIZED_BOTH MAXIMIZED_HORIZ と MAXIMIZED_VERT を連結する
ある状態がプラットフォームでサポートされていない場合は何も起こりません。特定の状態が有効かどうかは java.awt.Toolkit#isFrameStateSupported(int state) メソッドで判定できます。
state - フレームの状態定数のビットマスクgetExtendedState(),
Toolkit.isFrameStateSupported(int)public int getState()
旧バージョンの JDK では、フレームの状態は NORMAL か ICONIFIED のどちらかでした。JDK 1.4 からはより多くのフレーム状態がサポートされ、ビットマスクで状態が表されるようになりました。
以前のプログラムとの互換性のため、このメソッドは Frame.NORMAL と Frame.ICONIFIED を受け付けますが、これはフレームのアイコン化の状態だけをレポートし、フレームがほかの状態の場合はレポートされません。
Frame.NORMAL または Frame.ICONIFIED のどちらかsetState(int),
getExtendedState()public int getExtendedState()
NORMAL ICONIFIED
MAXIMIZED_HORIZ
MAXIMIZED_VERT
MAXIMIZED_BOTH MAXIMIZED_HORIZ と MAXIMIZED_VERT を連結する
setExtendedState(int)public void setMaximizedBounds(Rectangle bounds)
フレームが最大化された状態にあるときには、デフォルトの境界が提供されます。このメソッドを使用すると、システムで提供されているこれらの値をオーバーライドすることができます。
bounds が null の場合、システムで提供されている境界が使用されます。null でない場合は、システム提供の値を使用するフィールドに Integer.MAX_VALUE を設定すると、その項目についてはシステム提供の値を使用し、それ以外のフィールドの値をオーバーライドすることができます。
システムによっては境界のサイズの部分のみが考慮されます。
bounds - 最大化された状態で使用される境界getMaximizedBounds()public Rectangle getMaximizedBounds()
null も可能setMaximizedBounds(Rectangle)public void setUndecorated(boolean undecorated)
undecorated - 有効化できるフレーム装飾が
ない場合は true、
ある場合は false
IllegalComponentStateException - フレームが
表示可能な場合isUndecorated(),
Component.isDisplayable(),
JFrame.setDefaultLookAndFeelDecorated(boolean)public boolean isUndecorated()
true、
そうでない場合は falsesetUndecorated(boolean)public void remove(MenuComponent m)
MenuContainer 内の removeComponent 内の removem - 削除対象のメニューコンポーネント。
m が null の場合、
アクションは実行されないComponent.add(PopupMenu)public void removeNotify()
Window 内の removeNotifyComponent.isDisplayable(),
addNotify()protected String paramString()
Frame の状態を表す文字列を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null にはなりません。
Container 内の paramString@Deprecated public void setCursor(int cursorType)
Component.setCursor(Cursor) に置き換えられました。
@Deprecated public int getCursorType()
Component.getCursor() に置き換えられました。
public static Frame[] getFrames()
Frame を格納する配列を返します。アプレットから呼び出された場合、配列にはそのアプレットがアクセスできる Frame だけが格納されます。
警告: このメソッドは、システムで生成されたフレーム (Swing で使用される共有の非表示フレームなど) を返すことがあります。アプリケーションでは、このようなフレームが存在することを想定していません。また、このようなフレームに関しては、コンポーネントの位置、LayoutManager、直列化なども想定していません。
注:リリース 1.6 で導入された所有者なし Dialog も含め、すべての所有者なしウィンドウのリストを取得するには、Window.getOwnerlessWindows を使用してください。
Window.getWindows(sun.awt.AppContext),
Window.getOwnerlessWindows()public AccessibleContext getAccessibleContext()
Accessible 内の getAccessibleContextWindow 内の getAccessibleContext
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。