2

JOptionPane を使用するのはこれが初めてで、両方のボタンに特定のアクションを実行させる方法を誰かが説明してくれるかどうか疑問に思っていました。すべての意図と目的のために、「こんにちは」と出力するだけです。これが私のコードです。これまでのところ、「Uhh....」ボタンをクリックすると「Hi」のみが出力されますが、「w00t!!」をクリックすると同じように出力したいと考えています。ボタンも。パラメータ「JOptionPane.YES_NO_OPTION」と関係があることは知っていますが、正確に何をしなければならないのかわかりません。事前に助けてくれてありがとう!

Object[] options = {"Uhh....", "w00t!!"};
int selection = winnerPopup.showOptionDialog(null,
    "You got within 8 steps of the goal! You win!!",
    "Congratulations!", JOptionPane.YES_NO_OPTION,
    JOptionPane.INFORMATION_MESSAGE, null,
    options, options[0]);
    if(selection == JOptionPane.YES_NO_OPTION)
    {
        System.out.println("Hi");
    }
4

3 に答える 3

4

javadocsから、

showXxxDialog メソッドのいずれかが整数を返す場合、可能な値は次のとおりです。

YES_OPTION
NO_OPTION
CANCEL_OPTION
OK_OPTION
CLOSED_OPTION

したがって、コードは次のようになります。

if(selection == JOptionPane.YES_OPTION){
    System.out.println("Hi");
}
else if(selection == JOptionPane.NO_OPTION){
    System.out.println("wOOt!!");
}

しかし、とにかく、このロジックは少し奇妙なので、おそらく自分のダイアログを展開するだけです.

于 2012-11-28T19:07:38.767 に答える