質問
私の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
所属していません StackOverflow