Receber uma JScrollPane

15 respostas
A

Tipo…eu faço um consulta ao banco e recebo de volta um JScrollPane, como eu posso fazer, para que na segunda vez, ou quando a pessoa refizer a consulta o JScrollPane apareça vazio…(ele esta recebendo um JTable)…

Valew por todos que estão dando um help

15 Respostas

andre_a_s

Mas pq vc quer que o JScrollPane apareça vazio???
Onde vai apareçer os dados?

A

Não é bem vazio, mas aparecer com os novos resultados…Tipo dar um refresh ou repaint sei la…

andre_a_s

Pq vc não recria o objeto na hora e fazer a consulta?
Assim ele será criado com os dados da nova consulta :wink:
Vc vai meio que refazer o que fez na primeira consulta

A

Ta eu fiz issu, mas como a tela ainda esta em visualização ele não atualiza, eu ja tentei dar um setVisible(false) e true de novo…mas não adiantou…

A

Ta eu fiz issu, mas como a tela ainda esta em visualização ele não atualiza, eu ja tentei dar um setVisible(false) e true de novo…mas não adiantou…

A

Ta eu fiz issu, mas como a tela ainda esta em visualização ele não atualiza, eu ja tentei dar um setVisible(false) e true de novo…mas não adiantou…

andre_a_s

Hummm… entendi
É normal o setVilisbe() nao funcionar poi ele apenas esconde o objeto, e nao recarrega.
Dá uma olhada na API do JScrollPane, vê se nao tem nada que vc possa usar
Se vc matar o objeto, e criar um 100% novo nao rola?

A

Como mato o objeto ?

andre_a_s

Se vc fizer:

Object o = MyClass.get();

Ai depois fizer:

o = new Object();

Vc atribuiu um novo valor ao objeto. Ou vc pode simplesmente definir como nulo.

o = null;

Ai depois atribuindo um novo valor ao seu objeto :wink:

Vc mata ele e depois dá o valor com os novos resultados, tlvz isso funcione.

A

Ok, vou testar e se der problema volto aqui…
Valew

E tipo…
Como posso fazer para consultar em um BD as linhas que contem o “11” por exemplo… eu tentei… “…WHERE codigo=’"+codigo_b+"’”;//Onde codigo_b é a string para consulta

mas não rolou… e valew pelo help…

A

Não foi…Caramba ta complicado de resolver isto…

M

Opa cara tudo bem?

Você poderia me explicar melhor seu problema?

Gostaria de ajudá-lo mas não entendi bem o que vc quer fazer exatamente!

A

O da string eu consegui resolver, era só usar o LIKE

O Problema agora é o do JTable, é o seguinte, quando faço uma consulta ao banco MySQL, reecebo um JTble com os resultados, esse JTable é inserido em um JScrollPane para ser exibido em um JInternalFrame, até ai beleza ele funciona somente para a primeira consulta.

Quando vou fazer a 2ª consulta é que ocorre o problema, ele não atualiza o JTable, ficando com os dados antigos, como faço para poder atualizar o JTable com os novos valores?

M

Acho que já sei como resolver seu problema cara. Faz o seguinte, onde vc receber o resultado da consulta, vc cria uma nova instancia da sua JTable… suponhamos q sua tabela chame-se minhaTabela… dae vc faz assim…
minhaTabela = new JTable();
e atribui os resultados da consulta pra essa nova instância, e logo em seguida vc insere ela no JScrollPane.

Eu tinha uma aplicação na qual fazia isso pra atualizá-la, teste aí pra ver se funciona pra vc!

Qualquer coisa me avisa a gente tenta outras abordagens… quem sabe vc poderia mostrar um trecho do código pra gente ver melhor!

Abraço

A

Não funcionounão…

ai o código… pesquisa_act.addActionListener( new ActionListener() { public void actionPerformed( ActionEvent e ){ valor_consulta=pesquisa_text.getText(); if(valor_consulta.equals("")){ JOptionPane.showMessageDialog(null,"Digite um valor para a consulta !"); }else{ frame_consulta.setVisible(false); objeto.openBD(); dados=new JScrollPane(); dados=new JScrollPane(objeto.criarTabela(valor_consulta,1)); dados.setPreferredSize(new java.awt.Dimension(740,250)); dados.setAutoscrolls(true); painel_consulta2.add(dados); frame_consulta.setVisible(true); } } } });

Criado 16 de novembro de 2004
Ultima resposta 18 de nov. de 2004
Respostas 15
Participantes 4