Jump to content

Limitar tamanho da string num JOptionPane.showinputdialog()


filipe3632

Recommended Posts

Boa tarde

Estou aqui com uma dúvida e precisa de ajuda numa pequena coisa que secalhar é fácil, é o seguinte...

Eu tenho algo do género:

String ctelefone = (JOptionPane.showInputDialog("Introduza o nr. de telefone do Cliente:"));

e o que eu queria fazer era, esse número de telefone que introduzo queria poder introduzir só 9 dígitos, que era para se eu introduzisse 5 ou 10 dígitos ele estourasse. quero mesmo que ele estoure, se não introduzir 9, que é para depois eu poder criar uma excepção..

Será que me podem ajudar?

Cumprimentos, Filipe Moreira

Peace, Love & Empathy by: Kurt Cobain

Link to comment
Share on other sites

Não teria como você criar uma classe que herdaria de um JOptionPane e criar um método showInputDialog(...,...,..., int length), este método chamaria o showInputDialog da super classe, que retornaria uma String X, e se X.length != length, no seu método da classe faria um throw de uma exceção

Não sou muito bom em java, por isso não sei se fui muito claro,

Edited by Rafael Adão
Link to comment
Share on other sites

Não percebo porque é que queres criar uma excepção neste caso, não bastaria simplesmente validar o texto introduzido pelo utilizador?

A classe JOptionPane não permite grande controlo sobre o que é apresentado, o objectivo é apresentar algo simples e não estar a fazer esse tipo de controlos. Como opção podes:

- Validar o input depois de JOptionPane fechar e tratar o erro de acordo;

- Substituir a JOptionPane por uma JDialog com um campo de texto com o formato que pretendes;

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.