Java プラットフォーム 1.2

javax.swing
クラス JDialog

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Dialog
                          |
                          +--javax.swing.JDialog

public class JDialog
extends Dialog
implements WindowConstants, Accessible, RootPaneContainer

ダイアログウィンドウを作成するためのメインクラスです。このクラスを使うと、カスタムダイアログを作成したり、JOptionPane で多くの static メソッドを呼び出してさまざまな標準ダイアログを作成したりすることができます。 JDialog コンポーネントには、唯一の子として JRootPane が格納されます。contentPane は JDialog のすべての子の親になる必要があります。従来の java.awt.Window オブジェクトからは、通常は次のように操作します。

       dialog.add(child);
 
JDialog を使用する際の正しい使い方は次のとおりです。
       dialog.getContentPane().add(child);
 
同様の原則が、レイアウトマネージャの設定、コンポーネントの削除、および子のリスト表示などでも適用されます。通常、これらのメソッドはすべて JDialog ではなく、contentPane に送る必要があります。contentPane は常に null 以外です。null に設定しようとすると、例外が生成されます。デフォルトの contentPane には BorderLayout マネージャが設定されています。

contentPaneglassPane、および layeredPane コンポーネントの詳細については、JRootPane の説明を参照してください。

注: バージョン 1.1 では、AWT1.1 のウィンドウ所有権の制限のために、現在、Modal ダイアログは軽量ポップアップメニュー (JPopupMenu、JComboBox、JMenuBar) を許可するだけに制約されています。このためさらに、モーダルダイアログで Swing ポップアップコンポーネントと AWT の重量コンポーネントとを混在させることができないという制約が生じています。これは、重量コンポーネントは常に軽量コンポーネントをオーバーラップするので、ポップアップメニューが隠れてしまうことがあるためです。重量コンポーネントは、実装に対してネイティブなプラットフォームであるコンポーネント (ピアコンポーネント) を使用します。AWT コンポーネントは重量コンポーネントです。

標準の Look & Feel (L&F) 表現でこのコンポーネントが使用するキーボードのキーについては、JDialog のキーの割り当てを参照してください。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。

関連項目:
JOptionPane, JRootPane, 直列化された形式

内部クラスの概要
protected  class JDialog.AccessibleJDialog
          オブジェクトのユーザ補助機能を取得するのに使用されるクラスです。
 
フィールドの概要
protected  AccessibleContext accessibleContext
           
protected  JRootPane rootPane
           
protected  boolean rootPaneCheckingEnabled
           
 
クラス java.awt.Component から継承したフィールド
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
コンストラクタの概要
JDialog()
          モーダルでないダイアログを、タイトルなしで、指定されたオーナフレームなしで作成します。
JDialog(Frame owner)
          モーダルでないダイアログを、タイトルなしで、指定されたフレームをオーナとして作成します。
JDialog(Frame owner, boolean modal)
          モーダルまたはモーダルでないダイアログを、タイトルなしで、指定されたオーナフレームで作成します。
JDialog(Frame owner, String title)
          モーダルでないダイアログを、指定されたタイトルで、指定されたオーナフレームで作成します。
JDialog(Frame owner, String title, boolean modal)
          モーダルまたはモーダルでないダイアログを、指定されたタイトルで、指定されたオーナフレームで作成します。
 
メソッドの概要
protected  void addImpl(Component comp, Object constraints, int index)
          デフォルトでは、子をこのコンポーネントに直接追加せずに、コンポーネントの contentPane に追加する必要があります。
protected  JRootPane createRootPane()
          デフォルトの rootPane を作成するためにコンストラクタメソッドによって呼び出されます。
protected  void dialogInit()
          JDialog を適切に初期化するためにコンストラクタによって呼び出されます。
 AccessibleContext getAccessibleContext()
          この JDialog に関連付けられている AccessibleContext を取得します。
 Container getContentPane()
          このダイアログの contentPane オブジェクトを返します。
 int getDefaultCloseOperation()
          ユーザがこのダイアログで「クローズ」を開始したときに実行される処理を返します。
 Component getGlassPane()
          このダイアログの glassPane オブジェクトを返します。
 JMenuBar getJMenuBar()
          このダイアログに設定されているメニューバーを返します。
 JLayeredPane getLayeredPane()
          このダイアログの layeredPane オブジェクトを返します。
 JRootPane getRootPane()
          このダイアログの rootPane オブジェクトを返します。
protected  boolean isRootPaneCheckingEnabled()
           
protected  String paramString()
          この JDialog の文字列表現を返します。
protected  void processWindowEvent(WindowEvent e)
          defaultCloseOperation プロパティの状態に応じて、ウィンドウイベントを処理します。
 void setContentPane(Container contentPane)
          contentPane プロパティを設定します。
 void setDefaultCloseOperation(int operation)
          ユーザがこのダイアログで「クローズ」を開始したときに、デフォルトで実行される処理を設定します。
 void setGlassPane(Component glassPane)
          glassPane プロパティを設定します。
 void setJMenuBar(JMenuBar menu)
          このダイアログのメニューバーを設定します。
 void setLayeredPane(JLayeredPane layeredPane)
          layeredPane プロパティを設定します。
 void setLayout(LayoutManager manager)
          デフォルトでは、このコンポーネントの配置を設定せずに、コンポーネントの contentPane の配置を設定する必要があります。
 void setLocationRelativeTo(Component c)
          指定されたコンポーネントとの相対位置で、ダイアログの位置を設定します。
protected  void setRootPane(JRootPane root)
          rootPane プロパティを設定します。
protected  void setRootPaneCheckingEnabled(boolean enabled)
          true の場合、add() および setLayout() を呼び出すと、例外がスローされます。
 void update(Graphics g)
          paint(g) を呼び出すだけです。
 
クラス java.awt.Dialog から継承したメソッド
addNotify, getTitle, isModal, isResizable, setModal, setResizable, setTitle, show
 
クラス java.awt.Window から継承したメソッド
addWindowListener, applyResourceBundle, applyResourceBundle, dispose, finalize, getFocusOwner, getInputContext, getLocale, getOwnedWindows, getOwner, getToolkit, getWarningString, isShowing, pack, postEvent, processEvent, removeWindowListener, toBack, toFront
 
クラス java.awt.Container から継承したメソッド
add, add, add, add, add, addContainerListener, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setFont, validate, validateTree
 
クラス java.awt.Component から継承したメソッド
action, add, addComponentListener, addFocusListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputMethodRequests, getLocation, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isDisplayable, isDoubleBuffered, isEnabled, isFocusTraversable, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, remove, removeComponentListener, removeFocusListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus
 
クラス java.lang.Object から継承したメソッド
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

rootPane

protected JRootPane rootPane
関連項目:
getRootPane(), setRootPane(javax.swing.JRootPane)

rootPaneCheckingEnabled

protected boolean rootPaneCheckingEnabled
関連項目:
isRootPaneCheckingEnabled(), setRootPaneCheckingEnabled(boolean)

accessibleContext

protected AccessibleContext accessibleContext
コンストラクタの詳細

JDialog

public JDialog()
モーダルでないダイアログを、タイトルなしで、指定されたオーナフレームなしで作成します。共有されて、隠れたフレームがダイアログのオーナとして設定されます。

JDialog

public JDialog(Frame owner)
モーダルでないダイアログを、タイトルなしで、指定されたフレームをオーナとして作成します。
パラメータ:
owner - ダイアログを表示するフレーム

JDialog

public JDialog(Frame owner,
               boolean modal)
モーダルまたはモーダルでないダイアログを、タイトルなしで、指定されたオーナフレームで作成します。
パラメータ:
owner - ダイアログを表示するフレーム
modal - モーダルダイアログである場合は true。アクティブなときにほかのウィンドウが同時にアクティブになることができるダイアログである場合は false

JDialog

public JDialog(Frame owner,
               String title)
モーダルでないダイアログを、指定されたタイトルで、指定されたオーナフレームで作成します。
パラメータ:
owner - ダイアログを表示するフレーム
title - ダイアログのタイトルバーに表示される文字列

JDialog

public JDialog(Frame owner,
               String title,
               boolean modal)
モーダルまたはモーダルでないダイアログを、指定されたタイトルで、指定されたオーナフレームで作成します。

注: モーダルダイアログ内に作成されたポップアップコンポーネント (JComboBox、JPopupMenu、JMenuBar) は、軽量コンポーネントになります。

パラメータ:
owner - ダイアログを表示するフレーム
title - ダイアログのタイトルバーに表示される文字列
modal - モーダルダイアログである場合は true。アクティブなときにほかのウィンドウが同時にアクティブになることができるダイアログである場合は false
メソッドの詳細

dialogInit

protected void dialogInit()
JDialog を適切に初期化するためにコンストラクタによって呼び出されます。

createRootPane

protected JRootPane createRootPane()
デフォルトの rootPane を作成するためにコンストラクタメソッドによって呼び出されます。

processWindowEvent

protected void processWindowEvent(WindowEvent e)
defaultCloseOperation プロパティの状態に応じて、ウィンドウイベントを処理します。
オーバーライド:
クラス Window 内の processWindowEvent
関連項目:
setDefaultCloseOperation(int)

setDefaultCloseOperation

public void setDefaultCloseOperation(int operation)
ユーザがこのダイアログで「クローズ」を開始したときに、デフォルトで実行される処理を設定します。以下の値を選択できます。

デフォルト値は HIDE_ON_CLOSE です。

関連項目:
Window.addWindowListener(java.awt.event.WindowListener), getDefaultCloseOperation()

getDefaultCloseOperation

public int getDefaultCloseOperation()
ユーザがこのダイアログで「クローズ」を開始したときに実行される処理を返します。
戻り値:
ウィンドウクローズ処理を示す int 値
関連項目:
setDefaultCloseOperation(int)

update

public void update(Graphics g)
paint(g) を呼び出すだけです。このメソッドは、バックグラウンドのクリアのための不必要な呼び出しが行われないようにするためにオーバーライドされました。
オーバーライド:
クラス Container 内の update

setJMenuBar

public void setJMenuBar(JMenuBar menu)
このダイアログのメニューバーを設定します。
パラメータ:
menu - ダイアログに配置されるメニューバー
関連項目:
getJMenuBar()

getJMenuBar

public JMenuBar getJMenuBar()
このダイアログに設定されているメニューバーを返します。
関連項目:
setJMenuBar(javax.swing.JMenuBar)

isRootPaneCheckingEnabled

protected boolean isRootPaneCheckingEnabled()
戻り値:
add および setLayout がチェックされる必要がある場合は true
関連項目:
addImpl(java.awt.Component, java.lang.Object, int), setLayout(java.awt.LayoutManager), setRootPaneCheckingEnabled(boolean)

setRootPaneCheckingEnabled

protected void setRootPaneCheckingEnabled(boolean enabled)
true の場合、add() および setLayout() を呼び出すと、例外がスローされます。
関連項目:
addImpl(java.awt.Component, java.lang.Object, int), setLayout(java.awt.LayoutManager), isRootPaneCheckingEnabled()

addImpl

protected void addImpl(Component comp,
                       Object constraints,
                       int index)
デフォルトでは、子をこのコンポーネントに直接追加せずに、コンポーネントの contentPane に追加する必要があります。次に例を示します。
 thisComponent.getContentPane().add(child)
 
直接このコンポーネントに追加しようとすると、実行時例外がスローされます。サブクラスはこの動作を無効にすることができます。
例外:
Error - rootPaneChecking を true にして呼び出された場合
オーバーライド:
クラス Container 内の addImpl
関連項目:
setRootPaneCheckingEnabled(boolean)

setLayout

public void setLayout(LayoutManager manager)
デフォルトでは、このコンポーネントの配置を設定せずに、コンポーネントの contentPane の配置を設定する必要があります。次に例を示します。
 thisComponent.getContentPane().setLayout(new BorderLayout())
 
このコンポーネントの配置を設定しようとすると、実行時例外がスローされます。サブクラスはこの動作を無効にすることができます。
例外:
Error - rootPaneChecking を true にして呼び出された場合
オーバーライド:
クラス Container 内の setLayout
関連項目:
setRootPaneCheckingEnabled(boolean)

getRootPane

public JRootPane getRootPane()
このダイアログの rootPane オブジェクトを返します。
定義:
インタフェース RootPaneContainer 内の getRootPane
関連項目:
setRootPane(javax.swing.JRootPane), RootPaneContainer.getRootPane()

setRootPane

protected void setRootPane(JRootPane root)
rootPane プロパティを設定します。このメソッドはコンストラクタによって呼び出されます。
パラメータ:
root - このダイアログの rootPane オブジェクト
関連項目:
getRootPane()

getContentPane

public Container getContentPane()
このダイアログの contentPane オブジェクトを返します。
定義:
インタフェース RootPaneContainer 内の getContentPane
関連項目:
setContentPane(java.awt.Container), RootPaneContainer.getContentPane()

setContentPane

public void setContentPane(Container contentPane)
contentPane プロパティを設定します。このメソッドはコンストラクタによって呼び出されます。
定義:
インタフェース RootPaneContainer 内の setContentPane
パラメータ:
contentPane - このダイアログの contentPane オブジェクト
例外:
IllegalComponentStateException - (実行時例外) contentPane パラメータが null の場合
関連項目:
getContentPane(), RootPaneContainer.setContentPane(java.awt.Container)

getLayeredPane

public JLayeredPane getLayeredPane()
このダイアログの layeredPane オブジェクトを返します。
定義:
インタフェース RootPaneContainer 内の getLayeredPane
関連項目:
setLayeredPane(javax.swing.JLayeredPane), RootPaneContainer.getLayeredPane()

setLayeredPane

public void setLayeredPane(JLayeredPane layeredPane)
layeredPane プロパティを設定します。このメソッドはコンストラクタによって呼び出されます。
定義:
インタフェース RootPaneContainer 内の setLayeredPane
パラメータ:
layeredPane - このダイアログの layeredPane オブジェクト
例外:
IllegalComponentStateException - (実行時例外) layeredPane パラメータが null の場合
関連項目:
getLayeredPane(), RootPaneContainer.setLayeredPane(javax.swing.JLayeredPane)

getGlassPane

public Component getGlassPane()
このダイアログの glassPane オブジェクトを返します。
定義:
インタフェース RootPaneContainer 内の getGlassPane
関連項目:
setGlassPane(java.awt.Component), RootPaneContainer.getGlassPane()

setGlassPane

public void setGlassPane(Component glassPane)
glassPane プロパティを設定します。このメソッドはコンストラクタによって呼び出されます。
定義:
インタフェース RootPaneContainer 内の setGlassPane
パラメータ:
glassPane - このダイアログの glassPane オブジェクト
関連項目:
getGlassPane(), RootPaneContainer.setGlassPane(java.awt.Component)

setLocationRelativeTo

public void setLocationRelativeTo(Component c)
指定されたコンポーネントとの相対位置で、ダイアログの位置を設定します。現在、指定されたコンポーネントが表示されていない場合は、ダイアログは画面の中央に配置されます。
パラメータ:
c - ダイアログの位置の基準となるコンポーネント

paramString

protected String paramString()
この JDialog の文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null にはなりません。

JFC コンポーネントの新しい側面についての情報を返すには、paramString() をオーバーライドします。

戻り値:
この JDialog の文字列表現
オーバーライド:
クラス Dialog 内の paramString

getAccessibleContext

public AccessibleContext getAccessibleContext()
この JDialog に関連付けられている AccessibleContext を取得します。
定義:
インタフェース Accessible 内の getAccessibleContext
戻り値:
この JDialog の AccessibleContext

Java プラットフォーム 1.2

バグや機能要求の報告
新しい javadoc の表示についてのコメントやご提案
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.