0
Это код, я использую, чтобы обработать ввод целого числа:StringUtils.isNumeric блоки JOptionPane отменить опцию
public static int getIntInput(String message) {
String numberStr = JOptionPane.showInputDialog(message);
while (!StringUtils.isNumeric(numberStr) || Integer.parseInt(numberStr) == 0) {
numberStr = JOptionPane.showInputDialog(message);
}
return Integer.parseInt(numberStr);
}
Он отлично работает, за исключением того, когда я хочу нажать «отменить» или кнопку закрытия на окно JOption. Когда я это сделаю, окно JOptionPane появится снова.
Как правильно закрыть окно JOptionPane при нажатии кнопки отмены или закрытия?
заменить 'while' на' if' –
@ Саша Салауу не очень умное решение, потому что я действительно хочу, чтобы окно отображалось до тех пор, пока пользователь не вводит действительное целое число. Я просто хочу иметь возможность закрыть окно> завершить программу. –
, в чем же проблема? 'showInputDialog()' возвращает, когда какой-либо ввод отправляется пользователем, а затем вы его проверяете. Если значение недействительно, верните что-то другое, кроме входного значения - null или значение, указывающее неправильный ввод, e. г. -1 –