Galera, é o seguinte, tenho o seguinte método e preciso determinar um limite de tentativas tipo 3 por exemplo. A cada erro ele me informa o erro e a tentativa, até atingir o limite máximo onde ele me informa que foi excedido e encerra a aplicação…
public void OK() {
if (jtxtUsuario.getText().equals("DENIR")) {
if (jtxtSenha.getText().equals("123456")) {
Principal principal = new Principal();
principal.setExtendedState(MAXIMIZED_BOTH);
principal.setVisible(true);
dispose();
} else {
JOptionPane.showMessageDialog(null, "Senha Inválida!", "Atenção", JOptionPane.ERROR_MESSAGE);
jtxtSenha.setText("");
jbtnOK.setEnabled(false);
jtxtSenha.requestFocus();
}
} else {
JOptionPane.showMessageDialog(null, "Usuário Inexistente ou Desativado!" + "\n" + "Contacte o Administrador do Sistema.", "Atenção", JOptionPane.ERROR_MESSAGE);
jtxtSenha.setText("");
jbtnOK.setEnabled(false);
jtxtUsuario.setText("");
jtxtSenha.setEditable(false);
jtxtUsuario.requestFocus();
}
}
Olá
Coloca uma variável contadora do tipo int entre as linhas 9 e 12. Quando está chegar em 3 você mostra a mensagem de bloqueio.
[code]public void OK() {
int tentativa=0;
if (jtxtUsuario.getText().equals(“DENIR”)) {
if (jtxtSenha.getText().equals(“123456”)) {
Principal principal = new Principal();
principal.setExtendedState(MAXIMIZED_BOTH);
principal.setVisible(true);
dispose();
} else {
JOptionPane.showMessageDialog(null, “Senha Inválida!”, “Atenção”, JOptionPane.ERROR_MESSAGE);
jtxtSenha.setText("");
jbtnOK.setEnabled(false);
jtxtSenha.requestFocus();
tentativa++;
}
}
if(tentativa == 3){
JOptionPane.showMessageDialog(null, "Usuário Inexistente ou Desativado!" + "\n" + "Contacte o Administrador do Sistema.", "Atenção", JOptionPane.ERROR_MESSAGE);
jtxtSenha.setText("");
jbtnOK.setEnabled(false);
jtxtUsuario.setText("");
jtxtSenha.setEditable(false);
jtxtUsuario.requestFocus();
}
}
[/code]
Nao sei se é isso que voc~e quer mas a ideia é essa… colocar uma variavel para fazer o controle, quem nem nosso amigo disse…
.abraços
[quote=d34d_d3v1l]Nao sei se é isso que voc~e quer mas a ideia é essa… colocar uma variavel para fazer o controle, quem nem nosso amigo disse…
.abraços[/quote]
Então olha só o que eu fiz, mas o contador não sai do 1.
public void OK2() {
int conTentativa = 0;
if (conTentativa < 4) {
if (jtxtUsuario.getText().equals("DENIR")) {
if (jtxtSenha.getText().equals("123456")) {
Principal principal = new Principal();
principal.setExtendedState(MAXIMIZED_BOTH);
principal.setVisible(true);
this.dispose();
JOptionPane.showMessageDialog(null, "Acesso ao sistema liberado e registrado para!",
"Bem Vindo", JOptionPane.PLAIN_MESSAGE);
} else {
conTentativa++;
JOptionPane.showMessageDialog(null, "Senha Inválida!" +
"\n" + "Essa é a sua " + conTentativa + "ª tentavia.",
"Atenção", JOptionPane.ERROR_MESSAGE);
jtxtSenha.setText("");
jbtnOK.setEnabled(false);
jtxtSenha.requestFocus();
}
} else {
conTentativa++;
JOptionPane.showMessageDialog(null, "Usuário inexistente ou desativado!" +
"\n" + "Contacte o administrador do sistema." +
"\n" + "Essa é a sua " + conTentativa + "ª tentavia.",
"Atenção", JOptionPane.ERROR_MESSAGE);
jtxtSenha.setText("");
jbtnOK.setEnabled(false);
jtxtUsuario.setText("");
jtxtSenha.setEditable(false);
jtxtUsuario.requestFocus();
}
} else {
JOptionPane.showMessageDialog(null, "Limite de tentativas excedidas!" +
"\n" + "Contacte o administrador do sistema." +
"\n" + "Para sua segurança o sistema será encerrado.",
"Atenção", JOptionPane.ERROR_MESSAGE);
}
}
I ai como resolver???
Pessoal, resolvi o problema, muito obrigado pela atenção de todos, eu estava inicializando a variável contadora dentro do método por isso ela reiniciava a cada erro de tentativa a solução foi declarar fora do método dai assim resolveu o problema.
VALEU!