Você está aqui: Java ::: Classes e Componentes ::: JFormattedTextField

Entenda e aprenda a usar o componente JFormattedTextField em seus aplicativos Java

Quantidade de visualizações: 10140 vezes
Objetos da classe JFormattedTextField (do pacote javax.swing) fornecem suporte para a entrada de texto formatado. Quando tais objetos são criados, nós definimos uma máscara para a entrada de dados. Esta máscara pode ser um objeto da classe java.text.Format, um objeto da classe AbstractFormatter, um objeto da classe AbstractFormatterFactory ou um Object contendo o valor inicial a ser exibido no controle.

Esta classe herda da classe javax.swing.JTextField. Veja sua posição na hierarquia de classes da plataforma Java:

java.lang.Object
  java.awt.Component
    java.awt.Container
      javax.swing.JComponent
        javax.swing.text.JTextComponent
          javax.swing.JTextField
            javax.swing.JFormattedTextField


Além de fazer parte da hierarquia acima, a classe JFormattedTextField implementa as seguintes interfaces: ImageObserver, MenuContainer, Serializable, Accessible, Scrollable e SwingConstants.

Se você estiver usando a IDE Netbeans, a forma mais comum de se criar um objeto JFormattedTextField é acessar a Paleta de Componentes, ir até a seção Controles Swing, clicar no componente Campo formatado e arrastar para a posição desejada no seu formulário. Se preferir criar o JFormattedTextField manualmente, basta usar um código parecido com o que mostro abaixo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import java.awt.*;
import javax.swing.*;
import javax.swing.text.*;
import java.text.*;

public class Estudos extends JFrame{
  JFormattedTextField campo;  

  public Estudos(){
    super("Estudos Swing");
    
    Container c = getContentPane();
    c.setLayout(new FlowLayout(FlowLayout.LEFT));
    
    try{
      campo = new JFormattedTextField(
        new MaskFormatter("#####-###"));
    }
    catch(ParseException excp){
      // algum problema pode ocorrer aqui
    }
   
    campo.setPreferredSize(new Dimension(100, 25));
    
    // cria um botão
    JButton btn = new JButton("OK");		

    // Adiciona os controles à janela
    c.add(campo);
    c.add(btn); 

    setSize(350, 250);
    setVisible(true);
  }
  
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}

Neste trecho de código nós criamos um JFormattedTextField e fornecemos ao seu construtor um objeto da classe MaskFormatter contendo a máscara a ser usada para a entrada de CEPs. Se você executar este exemplo, verá que o componente somente aceita valores tais como 65454-958. Qualquer valor que não contenha dígitos dispostos desta forma será recusado.

É importante observar que o JFormattedTextField não realiza a formatação de seu conteúdo sozinho. Em vez disso, a formatação é feita por meio de uma instância da classe JFormattedTextField.AbstractFormatter, que é obtida a partir de uma instância de JFormattedTextField.AbstractFormatterFactory. Instâncias de JFormattedTextField.AbstractFormatter são notificadas quando se tornam ativas por meio do método install, momento no qual o JFormattedTextField.AbstractFormatter pode instalar o que for necessário, geralmente um DocumentFilter. Da mesma forma, quando o JFormattedTextField não mais precisar do AbstractFormatter, o método unistall será chamado.

Link para compartilhar na Internet ou com seus amigos:

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

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser. Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 32,90

Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.


© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 18 usuários muito felizes estudando em nosso site.