appendix> Component> JOptionPane | TOPUPPREVNEXT |
ダイアログのレイアウトは次のようになっています。
いろいろなクラス・メソッドが用意されていますが、 パラメタの種類や役割は共通です。
パラメタ | 意味 |
---|---|
Compnent parent | このダイアログの親フレームを指定します。
ダイアログは親フレームの中央に表示されます。
例1参照
null を指定すると、 ダイアログは画面の中央に表示されます。 ウィンドウをを表示しないプログラムでも、 null を指定してダイアログを表示できますが、 AWTのスレッドが動き始めますので、 プログラムの終了時に System.exit(0) でこのスレッドを止める必要があります。 例2参照 |
Object message | メッセージ欄に表示するメッセージ。 通常は文字列を指定します。 コンポーネントを指定するとそのコンポーネントが表示されます。 それ以外のオブジェクトは、toString() で文字列に変換され、 JLabel にラップされて表示されます。 配列であれば要素が順に並べられます。 |
int messageType | アイコンを指定する次の定数。
例2参照
|
int optionType | オプションボタンの種類を指定します。
例3参照
|
options | オプションボタン欄に表示するモノ。通常は String の配列を指定します。 指定した String がボタンに表示されます。 |
icon | アイコン欄に表示するアイコンを指定できます。 |
title | ダイアログのタイトル・バーの左端に表示される文字列を指定できます。 |
initialValue | デフォルトの選択を指定できます。 |
定数 | 意味 |
---|---|
static int CANCEL_OPTION | 「取り消し」を選択した場合に返される値 |
static int CLOSED_OPTION | ダイアログをクローズした場合に返される値 |
static int NO_OPTION | 「いいえ」を選択した場合に返される値 |
static int OK_OPTION | 「了解」を選択した場合に返される値 |
static int YES_OPTION | 「はい」を選択した場合に返される値 |
定数を確認するプログラム JOPDialog1.java
メソッド | 機能 |
---|---|
static int showConfirmDialog (
Component parent , Object message ) |
message を表示し、 「はい」、「いいえ」を選択するダイアログを表示します。 ダイアログのタイトルは、「オプションの選択」になります。 例1参照 |
static int showConfirmDialog (
Component parent , Object message , String title , int optionType , int messageType ) |
例2参照。 messageType を指定した例。 例3参照。 optionType を指定した例。 |
static int showInternalConfirmDialog (
Component parent , Object message ) |
例4参照 |
static int showInternalConfirmDialog (
Component parent , Object message , String title , int optionType , int messageType ) |
|
static void showMessageDialog (
Component parent , Object message ) |
例5参照 |
static int showMessageConfirmDialog (
Component parent , Object message , String title , int messageType ) |
|
static int showMessageConfirmDialog (
Component parent , Object message , String title , int messageType , Icon icon ) |
|
static String showInputDialog (
Component parent , Object message ) |
入力欄にテキスト・フィールドが表示され、入力した文字列を取得できるようになります。
message はメッセージ欄に表示されます。 タイトルは 「入力」と表示されます。「了解」ボタンをクリックするか、 テキスト・フィールドに Enter キーを入力すると、文字列が返されます。 「取り消し」ボタンをクリックするか、ダイアログを閉じた場合は、null が返されます。 例6参照 |
static String showInputDialog (
Object message )
|
ダイアログは、画面の中央に表示されます。
ウィンドウを表示しないプログラムでも使用できますが、 AWTのスレッドが起動しますので、 プログラムの実行終了時に System.exit(0) を呼び出すか、 プログラムを CTRL+C で強制終了させる必要があります。 |
static String showInputDialog (
Component parent , Object message , String title , int messageType ) |
|
static Object showInputDialog (
Component parent , Object message ) String title , int messageType , Icon icon , Object[ ] selectionValues , Object initialSelectionValue ) |
|
static int showOptionDialog (
Component parent , Object message ) String title , int optionType , int messageType , Icon icon , Object[ ] options , Object initialValue ) |
汎用のダイアログです。 例8参照 |
showConfirmDialog の例
プログラム JOPshowConfirmDialog1.java
実行結果
「はい」、「いいえ」、「取り消し」をクリックすると、
それぞれ定数 JOptionPane.YES_OPTION、JOptionPane.NO_OPTION、JOptionPane.CANCEL_OPTIONが返されます。
ボタンを押さずにダイアログを閉じると 定数 JOptionPane.CLOSED_OPTION が返されます。
showConfirmDialog で messageType (5番目のパラメタ)を指定する例。 parent に null を指定した例。
showConfirmDialog で optionType (4番目のパラメタ)を指定する例。
showInternalConfirmDialog の例
プログラム JOPshowInternalConfirmDialog1.java
実行結果
showConfirmDialog との違いは、
ダイアログを親フレームの外に動かすと判ります。
左が showInternalConfirmDialog、右が showConfirmDialog。
showMessageDialog の例。
showInputDialog の例。
ウィンドウを開かない場合の例。
プログラム JOPshowInputDialog2.java
Ctrl + C で強制終了させてください。
showOptionDialog の例。
プログラム JOPshowOptionDialog1.java
実行結果
アイコンが標準のものでよければ、 null を指定します。
messageType にしたがって標準のアイコンが表示されます。
左が JOptionPane.QUESTION_MESSAGE、右が JOptionPane.INFORMATION_MESSAGE。
initialValue でデフォルトのボタンが選択されていますから、 Enter キーを使ってボタンを押すことができます。 選択を変更するには、Tab キーを使います。 Shift + Tab で逆順にまわります。
更新日:2004-10-29