Você está aqui: Java ::: Classes e Componentes ::: JTextField |
Como escrever um JTextField que aceita apenas valores numéricosQuantidade de visualizações: 12905 vezes |
/* Este exemplo mostra como criar um JTextField que aceita apenas valores numéricos. */ import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.text.*; public class Estudos extends JFrame{ JTextField texto; public Estudos() { super("Estudos Swing"); Container c = getContentPane(); c.setLayout(new FlowLayout(FlowLayout.LEFT)); // Cria um JLabel JLabel label = new JLabel("Digite um valor:"); // Cria o JTextField texto = new JTextField(10); texto.setDocument(new MeuDocument()); // Adiciona o label à janela c.add(label); // Adiciona o JTextField à janela c.add(texto); setSize(350, 250); setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } // classe personalizada que amplia PlainDocument class MeuDocument extends PlainDocument{ public void insertString(int offs, String str, AttributeSet a) throws BadLocationException{ char digito; boolean numerico = true; for(int i = 0; i < str.length(); i++){ digito = str.charAt(i); if(!Character.isDigit(digito)){ numerico = false; break; } } if(numerico) super.insertString(offs, str, a); } } |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |