質問

私のJOptionPaneコードは次のとおりです。

selectedSiteName = JOptionPane.showInputDialog("Enter the name of the new site:");

これは、テキストボックスと[OK]および[キャンセル]ボタンを含む入力をレンダリングします。 [キャンセル]がクリックされたかどうかを検出する必要があります。

乾杯。

役に立ちましたか?

解決

selectedSiteName == nullかどうかを確認します。
これは、ユーザーが[キャンセル]をクリックするか、ダイアログを閉じる場合に発生します。

他のヒント

JOptionPane APIを読んで、"ダイアログの使用方法"に関するSwingチュートリアルへのリンクをたどってください。実用的な例です。

if(selectedSiteName == JOptionPane.CANCEL_OPTION)
{


}

動作するはずです。

JOptionPaneはJComponentを拡張します。

JOptionPaneのメソッド
1).showMessageDialog(); //無効:-(
2).showInputDialog(); // STRINGを返します:-)
3).showConfirmDialog(); // intを返します:-)
->その他...

例:

void myMethod() {

        JDialog jd = new JDialog();
        jd.setDefaultCloseOperation(1);

        JOptionPane jop = new JOptionPane();
        int val = jop.showConfirmDialog(jd, "Hello");
        if(val == 0) jop.showMessageDialog(null, "Success", "INFO", jop.INFORMATION_MESSAGE);

        System.out.println(val);

        jd.add(jop);

    }

役立つリンク:
- JOptionPane.getValue()がuninitializedValueを返し続ける理由
- https://docs.oracle.com/javase /7/docs/api/javax/swing/JOptionPane.html

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top