トップ 一覧 検索 ヘルプ RSS ログイン

MessageBoxの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
MessageBoxはメッセージを表示するモーダルなダイアログです。コンストラクタのオプションで様々なタイプのダイアログを表示することができます。

*OK, OK | CANCEL 
*YES | NO, YES | NO | CANCEL 
*RETRY | CANCEL 
*ABORT | RETRY | IGNORE 

 // 「OK」ボタンのみ
 MessageBox box1 = new MessageBox(shell,SWT.OK);
 box1.setMessage("SWT.OK");
 box1.open();
 // 「OK」と「キャンセル」ボタン
 MessageBox box2 = new MessageBox(shell,SWT.OK|SWT.CANCEL);
 box2.setMessage("SWT.OK|SWT.CANCEL");
 box2.open();
 // 「はい」と「いいえ」ボタン
 MessageBox box3 = new MessageBox(shell,SWT.YES|SWT.NO);
 box3.setMessage("SWT.YES|SWT.NO");
 box3.open();

ダイアログにアイコンを表示することもできます。

 // ERRORアイコン
 MessageBox box1 = new MessageBox(shell,SWT.NULL|SWT.ICON_ERROR);
 box1.setMessage("SWT.ICON_ERROR");
 box1.open();
 // INFORMATIONアイコン
 MessageBox box2 = new MessageBox(shell,SWT.OK|SWT.ICON_INFORMATION);
 box2.setMessage("SWT.ICON_INFORMATION");
 box2.open();
 // QUESTIONアイコン
 MessageBox box3 = new MessageBox(shell,SWT.YES|SWT.ICON_QUESTION);
 box3.setMessage("SWT.ICON_QUESTION");
 box3.open();
 // WARNINGアイコン
 MessageBox box4 = new MessageBox(shell,SWT.YES|SWT.ICON_WARNING);
 box4.setMessage("SWT.ICON_WARNING");
 box4.open();

どのボタンが押されたかはopenメソッドの戻り値で知ることができます。

 MessageBox box1 = new MessageBox(shell,SWT.YES|SWT.NO);
 box1.setMessage("YESかNOを選択してください");
 int result = box1.open();
 
 MessageBox box2 = new MessageBox(shell,SWT.OK);
 if(result==SWT.YES){
     box2.setMessage("YESがクリックされました");
 } else if(result==SWT.NO){
     box2.setMessage("NOがクリックされました");
 }
 box2.open();