мне не удается граничить в дни в jtextfield netbeans

Уже предельное в две цифры, но сейчас я хочу, чтобы он был между 1 и 31 (на месяц) у меня есть проблемы в делании этого, так что я нуждаюсь в помощи please: "v код:

    // codigo para validar cantidad de digitos (maximo 2 digitos)
    int numero = 2;//declaramos la cantidad de digitos
    if (txtdias.getText().length() >= numero) {// maximo 2 digitos
        evt.consume();
    }
    // Validamos caja de texto solo numerico
    String s1 = String.valueOf(evt.getKeyChar());
    if (!(s1.matches("[1-9_0]"))) {
        evt.consume();
    }
0
задан 11.06.2019, 05:58
2 ответа

Я не понимаю очень хорошо quГ© estГЎs делая, но верю в то, что ты estГЎs осложняя. Если ты хочешь санкционировать поле текста, я предлагаю это тебе:

    String s = txtdias.getText();
    int i = -1;
    try {
        i = Integer.parseInt(s);
    } catch (NumberFormatException e) {
        // error - no es numérico
    }
    if (i < 0 || i > 31) {
        // error
    }

, Если у тебя есть другие требования - предупреди. Но потом у тебя будут проблемы с месяцами... в конце концов, ты sabrГЎs.

0
ответ дан 02.12.2019, 01:00
  • 1
    Allí está s делая двойное написание стоимости твоей переменной i, если это nú морской окунь и написание стоимости, если это не nú морской окунь. Избеги инициализировать переменные, если ты не знаешь Вашу стоимость. – Ruslan López 11.06.2019, 10:31
  • 2
    Он имеет Ваш " из-за qué ".Inicializo переменная в -1, así está занеси в список для comprobació n ранга 0-31. Qué нужно делать, если он не numé богатым является вещь разработчика, не знает ló gica Вашего aplicació n. – Evgeni Enchev 11.06.2019, 10:58
  • 3
    это не ошибка ló gica, это ошибка optimizació n, если ты распределяешь стоимость -1 в catch funcionará má s rá pidamente. – Ruslan López 11.06.2019, 11:05

Ты можешь решать ошибку используя JSpinner вместо JTextField, JSpinner quedarГ - в следующего способа:

 private javax.swing.JSpinner numeroSpinner;
 numeroSpinner = new javax.swing.JSpinner();
 numeroSpinner.setModel(new javax.swing.SpinnerNumberModel(1, 1, 31, 1));

Или podrГ-схвати делать это вручную без cГіdigo входя в свойства JSpinner и изменять так называемое свойство model , и менять их parГЎmetros для того, чтобы он у тебя остался следующего способа:

introducir la descripción de la imagen aquí

0
ответ дан 02.12.2019, 01:00

Теги

Похожие вопросы