Como fazer para o campo TextField receber só numeros?  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
Soulslinux
Thread.start()

Membro desde: 17/10/2008 09:59:12
Mensagens: 34
Offline

Ola galera sou eu mais uma vez...

Fiz algumas pesquisas no google mais não obtive sucesso peço que se possivel me ajudem.

Bom preciso fazer com que o campo TextField receba somente numeros ao inves de numeros + string.

Quero so numeros como proceder.

Agradeço qualquer ajuda.
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20550
Localização: Curitiba/PR
Offline

Você tem 2 alternativas:
1. Usar o JFormattedTextField, e fornecer a ele uma máscara numérica;
2. Implementar um Document que só aceite números. Nesse caso, leia esse artigo do GUJ para entender como o Document funciona e adapte-o a sua necessidade: http://www.guj.com.br/java.tutorial.artigo.29.1.guj

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20550
Localização: Curitiba/PR
Offline

Por sorte, eu já tenho as classes aqui:



E uma que limita o tamanho máximo no JTextField.

This message was edited 2 times. Last update was at 22/10/2009 11:53:58


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
Soulslinux
Thread.start()

Membro desde: 17/10/2008 09:59:12
Mensagens: 34
Offline

Valeu cara ViniGodoy é exatamente o que precisava.
muito obrigado cara.

Fica com DEUS e ate a proxima.FUi.
Divx_java
Smalltalk

Membro desde: 17/10/2009 11:25:22
Mensagens: 3
Offline

ohh, value aew
super bacana isso
flwww
hiarlay
JavaTeenager
[Avatar]

Membro desde: 01/09/2008 13:47:25
Mensagens: 174
Localização: Cajazeiras-PB / Fortaleza-CE
Offline

Como faço pra setar um valor que utiliza um plain document?

Tenho um controle de dinheiro, preciso fazer valor.set(valoraserpago); mas não consigo dessa forma, como realizo esta atividade?



Hiarlay Araújo Rolim
[MSN]
paulo_alonso
HelloWorld

Membro desde: 03/12/2011 14:54:16
Mensagens: 10
Offline

Fla galera! Bom, o tópico é meio antigo, mas vou deixar uma ajuda caso alguem pergunte ao prof. google rs..

Seguinte, ao especializar a classe PlainDocument, temos um problema quando usamos o BeansBinding, pois ele usa o Document do próprio binding. Implementei as duas classes abaixo, que podem ser alteradas de acordo com a necessidade, especializando a classe DocumentFilter (descobri isso através de pesquisas, as quais tem as referências no fim da msg). Ao setar este document em um JTextField é necessário fazer um cast. Segue o código:



Obs.: Não entendi bem a diferença entre insertString() e replace(), deixei os dois iguais e funcionou, se alguém souber, posta aí

Esta classe especializa FixedLenghtDocument e permite somente números e pontos, além de limitar o número de caracteres



Aplicação



Referências

http://www.guj.com.br/java/127759-maxlenght--jtextfield--swing--beansbinding
http://www.java2s.com/Code/JavaAPI/javax.swing.text/AbstractDocumentsetDocumentFilterDocumentFilterfilter.htm

Abraço!

This message was edited 1 time. Last update was at 29/01/2012 10:13:57

 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team