Validar CNPJ com (brazilutils)

6 respostas
william_sistema

Meus caros este é meu primeiro post aqui no forum em Java, vamos la estou desenvolvendo um cadastro de fornecedores e preciso validar o cnpj ate ai tudo bem consigo fazer avalidação usando o brazilutils ao precionar o enter porem ao sai do campo tb preciso validar e caso esteja errado volte o foco para o campo cnpj segue meu código abaixo.

private void ftcCnpjActionPerformed(java.awt.event.ActionEvent evt) { if (!ftcCnpj.getText().equals("")) { if (ftcCnpj.getText().length() >= 14) { try { Cnpj cnpj; cnpj = new Cnpj(ftcCnpj.getText()); if (!cnpj.isCnpj() || !cnpj.isValid()) { JOptionPane.showMessageDialog(null, "CNPJ incorreto, Por favor, verifique.", "ERRO", JOptionPane.ERROR_MESSAGE); } } catch (ValidationException ex) { Logger.getLogger(FornecedorDetalhe.class.getName()).log(Level.SEVERE, null, ex); } } else { JOptionPane.showMessageDialog(null, "CNPJ incorreto, Por favor, verifique.", "ERRO", JOptionPane.ERROR_MESSAGE); ftcCnpj.requestFocus(); } } }

gostaria que este código funcionace ao sair do campo tb. grato pela atenção.

6 Respostas

Felagund

Para fazer sair do campo implrmente o evento FocusLost da Classe FocusListener.

Como o codigo da validação é o mesmo, separe ele em um metodo e chame o metodo no evento (PS, melhor ainda é criar uma classe Validadora, que vc envia a string e ela informa se o CNPJ é valido, para vc não ficar copiando e colando codigo da sua aplicação.

william_sistema

correto meu amigo

só tem um ploplema se eu usar no FocusLost

a menssagem do JoptonPanel aparece vezes sabe como resolver?

william_sistema

Alguem tem ideia porque se usar o FocusLost no código acima o JOption aparece 4 vezes?

Felagund

pode ser algum problema no transferFocus do componente, procure o nextFocusableComponent, e defina qual o proximo componente a ter o foco.

william_sistema

cara não exiteesta propriedade achei a nextFocus porém esta trasada imagino que não tem.

alguma outra sugestão?

Felagund

Aqui, um modelo melhor do que o FocusLost para o que vc precisa

http://java.sun.com/docs/books/tutorial/uiswing/misc/focus.html#inputVerification

Criado 29 de março de 2010
Ultima resposta 30 de mar. de 2010
Respostas 6
Participantes 2