Попытка ввести данные в форму в Java, прежде чем она перейдет в другую форму - PullRequest
0 голосов
/ 03 марта 2020

Я пытаюсь разрешить пользователю заполнить форму в Java после отображения сообщения об ошибке, указывающего, что поле пусто. В настоящее время всплывают диалоговые окна, и затем форма переходит непосредственно к следующей форме, не позволяя пользователю вводить что-либо.

Вот фрагмент кода, с которым я работаю:

 private void btnEnterActionPerformed(java.awt.event.ActionEvent evt) {  

       //Confirming that the input fields have values
       String un = UserName.getText().toString();
       if(un.equals("")) {
           JOptionPane.showMessageDialog(null, "Username Required");
       }

       String pw = Password.getText().toString();
       if(pw.equals("")) {
           JOptionPane.showMessageDialog(null, "Password Required");
       }

       //link to HRDBS
       HRDBS dbp = new HRDBS();
       dbp.setVisible(true);
       dbp.pack();
       dbp.setLocationRelativeTo(null);
       this.dispose();

    }                     

Спасибо за помощь в этом вопросе

1 Ответ

0 голосов
/ 03 марта 2020

будет немного лучше, если проверка переносится на отдельный метод и возвращает первую ошибку. также вы можете накапливать ошибки в одном сообщении.

private boolean validateValues() {
    String un = UserName.getText().toString();
    if(un.equals("")){

        JOptionPane.showMessageDialog(null, "Username Required");
        return false;
    }


    String pw = Password.getText().toString();
    if(pw.equals("")){

        JOptionPane.showMessageDialog(null, "Password Required");
        return false;
    }
    return true;
}

private void btnEnterActionPerformed(java.awt.event.ActionEvent evt) {
    //Confirming that the input fields have values
    if(validateValues()) {
        //link to HRDBS
        HRDBS dbp = new HRDBS();
        dbp.setVisible(true);
        dbp.pack();
        dbp.setLocationRelativeTo(null);
        this.dispose();
    }
}       
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...