JformattedField ajuda :///

Estou tendo alguns problemas com um retorno… estou fazendo um programa que valide cpf, soh estou tendo dificuldades em pegar o numero digitado no JFormattedTextField, qual método eu uso??? não consigo fazer o numero ser jogano numa String numCPF… alguem poderia me ajudar???

Há um tópico sobre formatação de cpf nessa página mesmo do fórum.

Realmente tem, mas pelo q vi nao mostra como retorno o valor do JFormattedTextField… Tudo esta funcionando, menos o retorno do valor q nao estou conseguindo jogar em uma string…

Mostra o pedaço do seu código onde isso tá acontecendo :smiley:

public class CPFteste extends JFrame{
public JFormattedTextField CpfField;
private JButton Okbut;
public String numCPF;

public CPFteste(){
  Container container = getContentPane();
  container.setLayout( new FlowLayout() );
  MaskFormatter format = new MaskFormatter("###.###.###-##"); 
  format.setValidCharacters("0123456789");
  JFormattedTextField CpfField = new JFormattedTextField(format); 
  container.add( CpfField );
  Okbut = new JButton("Valida");
  Okbut.addActionListener( 
     new ActionListener() {
	   public void actionPerformed( ActionEvent event )
	   {
          //numCPF = CpfField.getText();
          //testacpf.setNumber(numCPF);
        }
		}
   );
  container.add( Okbut );
  }

public void main ( String args[] )
{
CPFteste janela = new CPFteste();
janela.setSize(200, 100);
janela.setVisible( true );

}

}

esta dando 2 erros um q eu tenho q jogar uma exceção e onde ta comentado eh onde preciso receber o valor do JFormattedTextField

Obrigado pela ajuda =P

É esse?

 Object - getValue() 
          Returns the last valid value. 

dica: quando for postar código aqui no fórum, coloque ele entre tags [.code][./code] (sem os pontinhos). Sendo assim ele fica formatado com sua indentação :smiley:

valews… tipo arrumei qse tudo, agora num sei se ta com pau o compilador da facul, mas ta dando o seguinte erro

Exception in thread "main" java.lang.NoSuchMethodError: main

vc sabe oq pode ser???
[/code]

Seu programa é um applet ou application? Isso é erro de compilação ou de runtime?

eh um application, e ta dando erro no runtime… a compilação agora esta normal =]

Ele nem roda a aplicação?

Você tem o método
public static void main?

Quantos arquivos vc está usando ???
Vc está no Windows ou Linux ???
Teste…
java -classpath . SeuPrograma
:?

Bom galera…ta no fim…consegui fazer tudo, só preciso agora filtrar oq eh recebido do JFormattedTextField…
um exemplo

eu coloquei a mascara ###.###.###-##

suponhamos q eu digite

712.335.241-07

eu queri que aparecesse apenas

71233524107

eu precisaria q a string recebesse apenas os numero, eliminando os pontos e o traço, como eu faria isso?? tem alguma função ja implementada???

Bom gente descobri como filtrar a saida e sair apenas os numeros, mas esta dando um erro ainda, eu estou usando o seguinte codigo…

...
	  MaskFormatter formato = null;
	  try{
	  formato = new MaskFormatter("###.###.###-##"); 
	  }
	  catch(ParseException parse){
	  parse.printStackTrace();
	  }
	  formato.setValueContainsLiteralCharacters(false);
...

e depois para receber o valor

...
numCPF = formato.valueToString( CpfField.getText() );
...

não sei se é a melhor solução, aceito idéias…
mas voltando ao erro o compilador acusa q a variavel formato tem q ser final, mas nao posso declarala final senao acusa outro erro, alguma ideia??

obrigado pela ajuda a todos

Tem como eu “setar” um MaskFormatter para o JFormattedTextField depois que ele foi criado?

ex:

JFormattedTextField j1 = new JFormattedTextField();
j1.setFormatter( new MaskFormatter("###.##") );

Tem como?

sobre o erro que esta dando no computador da sua faculdade

Exception in thread "main" java.lang.NoSuchMethodError: main 

é a versão do JVM que é antiga…

falow…

Viajou, Daniel :lol: - o problema eh a falta do metodo main(String[]) na classe.

sério… :shock: ?

realmente o main dele esta com a assinatura errada…ta faltando o static, porém quando vc tenta interpretar o aplicativo feito em swing(por exemplo) em uma versão mais antiga do JVM ele também reclama algo do tipo… :wink:

Sim, a excecao é a mesma, mas a causa é bem diferente :wink: