2016-03-25 21 views
1

サイズ変更可能なMessageDialogを作成するにはどうすればよいですか。サイズ変更可能なMessageDialogを作成する方法

Shell parentShell = Display.getCurrent().getActiveShell(); 
MessageDialog.openInformation(parentShell, "title", "message"); 

情報ダイアログのサイズを変更することはできません。それをサイズ変更可能にするには?

+0

わかりません。新しいシェルでメッセージダイアログが開き、親シェルは変更されません。 –

+0

実行後、新しいウィンドウが表示されますが、サイズを変更できません – Mehdi

答えて

3

MessageDialogはサイズ変更可能ではありません。サイズ変更可能にしたい場合は、getShellStyle()メソッドをオーバーライドして、目的のスタイルフラグを返します。

MessageDialog dialog = new MessageDialog(shell, 
              "title", 
              null, 
              "message", 
              MessageDialog.INFORMATION, 
              new String[] { IDialogConstants.OK_LABEL }, 
              0) 
{ 
    protected int getShellStyle() { 
    return SWT.SHELL_TRIM; 
    } 
}; 

例えば

は、情報アイコンと最小/最大/クローズボタンを使ってサイズ変更可能なダイアログになります。

+0

応答ありがとうございます。最小/最大/終了はありません – Mehdi

+0

スタイルパラメータに 'SWT.SHEET'だけが受け入れられ、他のスタイルはすべて破棄されます。 –

+2

このヒントのおかげで@ greg-449。私はサイズ変更可能なメッセージダイアログを得るためのハックで答えを更新しました。 Mehdi、本当にサイズ変更可能なメッセージダイアログが必要な場合は再考してください。サイズ変更できるように設計されていないのは簡単です。 –

関連する問題