コードに問題があります。ユーザーがCANCEL.OPTION
またはCLOSED.OPTION
をクリックするとこのループを終了しようとしています。例外を処理しましたが、ウィンドウ上のボタンを使用できないようです。プログラムは、年齢の入力からユーザーの誕生日を取得します。私が抱えている問題は、ボタンを使ってループを終了できないということです。前もって感謝します!JOptionPaneでwhileループを終了するには
public Integer getBirthYear() {
boolean prompt = true;
while(prompt) {
String enteredAge = showInputDialog(null,"Enter age:");
try {
age = Integer.parseInt(enteredAge);
if(age == JOptionPane.CANCEL_OPTION || age == JOptionPane.CLOSED_OPTION) {
System.out.println("MADE IT INTO IF");
}
age = year - age;
prompt = false;
showMessageDialog(null,age);
} catch (NumberFormatException e) {
e.printStackTrace();
}
}
return age;
}
tryとcatch節の外にpromp = falseを入れてください。 –