Bom Dia, gostaria, se possivel, de uma auxilio com JTextField e JTextArea, estou desenvolvendo uma aplicação que guardara em um arraylist diversos dados cadastrais de clientes e a partir de uma busca baseada num codigo identificador, serao retornados os dados do cliente em questão. O meu problema ocorre quando eu tento imprimir estes dados em um JTextArea e um JTextField, no caso do JTextArea o erro: “Exception in thread “AWT-EventQueue-0” java.lang.ClassCastException: javax.swing.JTextField cannot be cast to java.lang.String” é apresentado…vocês saberia me informar porque isso ocorre?
PS:Efetuei uma bvusca no GUJ antes de criar este topico, e o erro informado ocorre mesmo que eu utilize o JTextArea.append();
Não da certo nem no textField nem no JTextArea....
J
Javax2011
Imagino que o erro esteja neste trecho:
O certo:
O size() retorna a quantidade de elementos, por exemplo 5.
Mas os índices começam do 0, então você tem os clientes 0, 1, 2, 3 e 4.
E como o i está indo até 5, você pesquisa por um elemento que não existe, e ai dá o erro.
J
Johnny_266
Infelizmente tambem não é isso, eu apenas uso o For pra percorrer o arraylist para encontrar o codigo que eu preciso…
J
Javax2011
Você já conferiu se nesse trecho as Strings estão realmente recebendo alguma coisa?
O erro é bem claro. Diz que você não pode converter um JTextField para uma String.
Para obter a String de um JTextField, você deve chamar o método getText().
Procure na exception qual classe do seu código está fazendo com que a exception seja disparada, e corrija lá o problema.
ViniGodoy
Tópico movido para o fórum de interface gráfica.
J
Johnny_266
Obrigado pelo Auxilio Javax2011 e ViniGodoy ^^
ViniGodoy no caso eu estou precisando obter um valor que esta em um arraylist e joga-lo em um textField, é isto que não estou conseguindo fazer…=(
ViniGodoy
Em que linha exatamente o erro ocorre?
O erro é bem claro, em algum lugar você está tentando fazer um cast de JTextField para String.
J
Johnny_266
Olá ViniGodoy, segue 1º o metodo:
publicvoidconsultarCliente(){intauxiliar=0;JOptionPane.showInputDialog("Insira o codigo do cliente:");for(inti=0;i<cadastrarAluno.size()-1;i++){if(cadastrarcliente.contains(codigo)){auxiliar=i;Stringcodigo_auxiliar=(String)cadastrarAluno.get(auxiliar);Stringnome_auxiliar=(String)cadastrarAluno.get(auxiliar+1);Stringidade_auxiliar=(String)cadastrarAluno.get(auxiliar+2);codigo.setText(codigo_auxiliar);nome.setText(nome_auxiliar);idade.setText(idade_auxiliar);}else{JOptionPane.showMessageDialog(null,"cliente nao localizado!");}}}