Criar Jtable no eclipse adicionando o componente Jtable no projeto

9 respostas
J

Não estou conseguindo fazer aparecer o nome das colunas e o tamanho das colunas segue abaixo o codigo:
///função preenche jtable
/* public void preencher_jTable() {

try{
    	conecta.conectar();
		jTable.getColumnModel().getColumn(0).setPreferredWidth(20);
		jTable.getColumnModel().getColumn(1).setPreferredWidth(150);
		jTable.getColumnModel().getColumn(2).setPreferredWidth(20);

		String comandoSQl ="SELECT FROM produtos";
    	produto.stm.executeUpdate(comandoSQl);
    	DefaultTableModel modelo =(DefaultTableModel)jTable.getModel();
	    
    	modelo.setNumRows(0);//toda vez que for chamado ele zera a tabela
    	
	    while(produto.Resultado.next()){
    	    modelo.addColumn(new Object[]{"codigo,descrição,valor"});
	    	modelo.addRow(new Object[]{produto.Resultado.getString("codigo"),produto.Resultado.getString("descricao"),produto.Resultado.getString("valor")});
	    	produto.Resultado.first();
    	}
    }catch (Exception e1){
	  	   System.out.println("Erro ao listas dados!");
     }


}*/

9 Respostas

R

talvez pq vc esteja criando as colunas no loop

coloque isso fora do loop while

modelo.addColumn(new Object[]{"codigo,descrição,valor"});
V

Sua JTable está dentro de um JScrollPane?

E outra coisa... não use DefaultTableModel. Ele é um caminho certo para a frustração e para um código extremamente mal escrito.

Finalmente, mesmo que você continue usando o DefaultTableModel, é bom lembrar que o método setNumRows() é considerado obsoleto. Você deve usar no lugar o setRowCount. Além disso, o método addColumn não é usado dessa forma. Ele adiciona uma única coluna. Se você quiser usar um array, deverá usar o construtor do model, passando junto os dados. Caso contrário, fornece um nome de coluna de cada vez.

É sempre bom seguir as recomendações do javadoc enquanto estiver programando. Leia com atenção a documentação, jamais tente programar por tentativa e erro. Se usar os objetos de maneira errada, obviamente eles não irão funcionar.

Uma dica aqui para o guj. Sempre que for postar código, use a tag code:
[code]
Seu código aqui
[/code]

J

Estou utilizando apenas um componente Jtable dentro de um jpanel.
Mas ainda não consegui fazer funcionar, alguém tem alguma dica de o que devo colocar nas propriedades do jtable???
aguardo…

V

Sem o JScrollPane os nomes das colunas do JTable nunca aparecerão.

J

Vini!

Vc não tem um exemplo de colocar o jtable utilizando o eclipse??
aguardo…

V

Você está usando algum editor de janelas, como o Visual Editor? Ou está fazendo no braço mesmo?

J

Estou usando o visual editor, com os componentes swing. jtable

V

Veja lá, tem um chamado “JTable with JScrollPane”

M

Ou então adicione o JScrollPane e veja se tem a opção setPortView e coloque o JTable.

Criado 21 de junho de 2010
Ultima resposta 23 de jun. de 2010
Respostas 9
Participantes 4