0

以下のコードを使用してメッセージダイアログを表示しようとしています:

MessageDialog dialog = new MessageDialog(shell, "My Title", null,
             "Are you Sure?", MessageDialog.CONFIRM, 
              new String[] { "Yes","No" }, 0);

唯一の問題は、メッセージダイアログが表示されると、"Yes"ボタンにフォーカスが表示されるため、ユーザーがEnterキーを押すと、デフォルトで"Yes"押されることです。 ユーザーがEnterキーを押すたびに「いいえ」が押されるように、「いいえ」ボタンにフォーカスを置くにはどうすればよいですか。

ボタンの順番は変えたくないのでご注意ください。最初は「はい」で、「いいえ」よりも多い必要があります。

4

1 に答える 1

1

最後のコンストラクター引数を、デフォルトにしたいボタンのインデックスに設定するだけです。Javadocによると:

public MessageDialog(Shell parentShell,
                 String dialogTitle,
                 Image dialogTitleImage,
                 String dialogMessage,
                 int dialogImageType,
                 String[] dialogButtonLabels,
                 int defaultIndex)

defaultIndex-デフォルトボタンのボタンラベル配列のインデックス

于 2012-11-14T08:53:21.097 に答える