メッセージボックス
日本語 | 通知箱 |
英語 | message box |
ふりがな | めっせーじぼっくす |
フリガナ | メッセージボックス |
ユーザーに確認をするための専用ダイアログ。
ダイアログの一種。モーダルダイアログで、簡単に「はい」「いいえ」といったボタンを持つダイアログを表示することができ、いずれかのボタンが押された場合にダイアログが閉じる。どのボタンが押されたのかは簡単に取得することができる。
AWTにはメッセージボックスを表示するクラスは存在しない。
SwingであればJOptionPaneクラスで表示できる。JOptionPaneクラスのshowConfirmDialog()メソッドを呼び出すことで、細かな設定を必要とせず呼び出すことができる。また、このメソッドの戻り値に「押されたボタン」を示す整数値が返される。
ダイアログの一種。モーダルダイアログで、簡単に「はい」「いいえ」といったボタンを持つダイアログを表示することができ、いずれかのボタンが押された場合にダイアログが閉じる。どのボタンが押されたのかは簡単に取得することができる。
AWTにはメッセージボックスを表示するクラスは存在しない。
SwingであればJOptionPaneクラスで表示できる。JOptionPaneクラスのshowConfirmDialog()メソッドを呼び出すことで、細かな設定を必要とせず呼び出すことができる。また、このメソッドの戻り値に「押されたボタン」を示す整数値が返される。
参考サイト
// Sample.java
import java.awt.Frame;
import java.awt.event.WindowListener;
import java.awt.event.WindowEvent;
import javax.swing.JOptionPane;
public class Sample
{
public static void main( String[] args )
{
// ウィンドウを作ります。
NormalWindow normalWindow = new NormalWindow();
// コンストラクタでウィンドウが作られます。
}
}
/**
* 普通のウィンドウクラス。
*/
class NormalWindow extends Frame implements WindowListener
{
/**
* コンストラクタ。
*/
public NormalWindow()
{
// ウィンドウを作ります。
super( "テストウィンドウ" );
addWindowListener( this );
setSize( 400 , 300 );
setVisible( true );
}
/**
* ウィンドウが閉じようとするときに呼ばれるメソッド。
*/
public void windowClosing( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowClosing()" );
// はい/いいえのメッセージボックスを表示します。
int result = JOptionPane.showConfirmDialog( this, "終了しますか?", "終了確認", JOptionPane.YES_NO_OPTION );
if( result == JOptionPane.YES_OPTION )
{
// 「はい」が押されたので、ウィンドウを閉じます。
dispose();
}
}
/**
* ウィンドウが閉じるときに呼ばれるメソッド。
*/
public void windowClosed( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowClosed()" );
System.exit( 0 );
}
/**
* 以下、その他イベントハンドラ。
* これらのメソッドはWindowListenerインターフェイスの
* メソッドなので、全てオーバーライドする必要があるためです。
*/
public void windowActivated( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowActivated()" );
}
public void windowDeactivated( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowDeactivated()" );
}
public void windowDeiconified( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowDeiconified()" );
}
public void windowIconified( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowIconified()" );
}
public void windowOpened( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowOpened()" );
}
}
import java.awt.Frame;
import java.awt.event.WindowListener;
import java.awt.event.WindowEvent;
import javax.swing.JOptionPane;
public class Sample
{
public static void main( String[] args )
{
// ウィンドウを作ります。
NormalWindow normalWindow = new NormalWindow();
// コンストラクタでウィンドウが作られます。
}
}
/**
* 普通のウィンドウクラス。
*/
class NormalWindow extends Frame implements WindowListener
{
/**
* コンストラクタ。
*/
public NormalWindow()
{
// ウィンドウを作ります。
super( "テストウィンドウ" );
addWindowListener( this );
setSize( 400 , 300 );
setVisible( true );
}
/**
* ウィンドウが閉じようとするときに呼ばれるメソッド。
*/
public void windowClosing( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowClosing()" );
// はい/いいえのメッセージボックスを表示します。
int result = JOptionPane.showConfirmDialog( this, "終了しますか?", "終了確認", JOptionPane.YES_NO_OPTION );
if( result == JOptionPane.YES_OPTION )
{
// 「はい」が押されたので、ウィンドウを閉じます。
dispose();
}
}
/**
* ウィンドウが閉じるときに呼ばれるメソッド。
*/
public void windowClosed( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowClosed()" );
System.exit( 0 );
}
/**
* 以下、その他イベントハンドラ。
* これらのメソッドはWindowListenerインターフェイスの
* メソッドなので、全てオーバーライドする必要があるためです。
*/
public void windowActivated( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowActivated()" );
}
public void windowDeactivated( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowDeactivated()" );
}
public void windowDeiconified( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowDeiconified()" );
}
public void windowIconified( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowIconified()" );
}
public void windowOpened( WindowEvent windowEvent )
{
System.out.println( "NormalWindow#windowOpened()" );
}
}
// Sample.java import java.awt.Frame; import java.awt.event.WindowListener; import java.awt.event.WindowEvent; import javax.swing.JOptionPane; public class Sample { public static void main( String[] args ) { // ウィンドウを作ります。 NormalWindow normalWindow = new NormalWindow(); // コンストラクタでウィンドウが作られます。 } } /** * 普通のウィンドウクラス。 */ class NormalWindow extends Frame implements WindowListener { /** * コンストラクタ。 */ public NormalWindow() { // ウィンドウを作ります。 super( "テストウィンドウ" ); addWindowListener( this ); setSize( 400 , 300 ); setVisible( true ); } /** * ウィンドウが閉じようとするときに呼ばれるメソッド。 */ public void windowClosing( WindowEvent windowEvent ) { System.out.println( "NormalWindow#windowClosing()" ); // はい/いいえのメッセージボックスを表示します。 int result = JOptionPane.showConfirmDialog( this, "終了しますか?", "終了確認", JOptionPane.YES_NO_OPTION ); if( result == JOptionPane.YES_OPTION ) { // 「はい」が押されたので、ウィンドウを閉じます。 dispose(); } } /** * ウィンドウが閉じるときに呼ばれるメソッド。 */ public void windowClosed( WindowEvent windowEvent ) { System.out.println( "NormalWindow#windowClosed()" ); System.exit( 0 ); } /** * 以下、その他イベントハンドラ。 * これらのメソッドはWindowListenerインターフェイスの * メソッドなので、全てオーバーライドする必要があるためです。 */ public void windowActivated( WindowEvent windowEvent ) { System.out.println( "NormalWindow#windowActivated()" ); } public void windowDeactivated( WindowEvent windowEvent ) { System.out.println( "NormalWindow#windowDeactivated()" ); } public void windowDeiconified( WindowEvent windowEvent ) { System.out.println( "NormalWindow#windowDeiconified()" ); } public void windowIconified( WindowEvent windowEvent ) { System.out.println( "NormalWindow#windowIconified()" ); } public void windowOpened( WindowEvent windowEvent ) { System.out.println( "NormalWindow#windowOpened()" ); } }