Cara, eu acho que pra fazer isso que você quer, vc deveria implementar um javax.swing.text.Document e não usar o MaskFormater.
eu ja implementei um javax.swing.text.Document pra algo parecido… pra fazer digitaçao de valores monetários… o meu Document colocava a vírgula automaticamente duas casas antes do final do número…
pesquisa por javax.swing.text.Document que vc vai encontrar uma solução.
Depois de implementar seu Document, faça algo como:
myJTextField.setDocument(myDocument);
sf.marcius
Outra maneira seria colocar o MaskFormater como você está tentando, mas daí o “-” nao vai “aparecer” qdo o vivente digitar o sexto dígito. Na verdade, o campo irá possuir uma máscara estática:
publicclassMinhaJanelaDeCadastroextendsJFrame{privateJFormatedTextFieldfield1;privateJFormatedTextFieldfield2;// restante do código de def de atributos...publicMinhaJanelaDeCadastro(){// inicializa todos os componentes da janela...initComponents();// neste momento field1 e field2 devem estar inicializados. vamos colocar a máscaraMaskFormatermask=newMaskFormatter("#####-###");// mascara cepmask.setPlaceHolderChar('_');// coloca um '_' nas posições que o usuario ainda nao digitoumask.install(field1);// instala a mascara no campo 1mask.install(field2);// instala a mesma mascara no campo 2// restante do codigo do construtor...}// restante do codigo da classe...}
guisantogui
Alguem poderia me dar mais dicas sobre a classe document, pesquisei, mas naum axei