Dúvida com nome de coluna JTable. [RESOLVIDO]

4 respostas
S

Salve desenvolvedores.

Finalizei, em parte, um JTable que estou fazendo em meu projeto de aprendizagem, mas mais uma pedra apareceu no meio do caminho.

O nome das colunas não está aparecendo mesmo que eu crie o vetor e sete como identificador da coluna.

Segue meu código abaixo (apenas da JTable).

private JTable getTb_Pessoas() {
		
		modelo = new DefaultTableModel();
		modelo.setColumnCount(3);
		if (tb_Pessoas == null) {
			tb_Pessoas = new JTable(modelo);
			tb_Pessoas.setBounds(new Rectangle(43, 117, 375, 80));
			tb_Pessoas.setShowGrid(true);
		}
		return tb_Pessoas;
	}

Testei de diversas maneiras, nao achei erro (pois nao deu nenhum), porem as colunas continuam sem nome.

Algo que estou fazendo de errado?

Abracços

4 Respostas

kenneth

Fala garoto…

Quando vc tiver um tempinho, da uma lida no topico que o pessoal ai tem sobre
as recomendacoes para nao usar DefaultTableModel()…
http://www.guj.com.br/posts/list/15/199067.java#1001295

Ah, da uma lida tb nas convencoes de codigo:
http://www.oracle.com/technetwork/java/codeconvtoc-136057.html

Vamos la, tente assim:

private JTable getTb_Pessoas() {
		
		DefaultTableModel modelo = new DefaultTableModel(new Object[]{"Coluna1","Coluna2","Coluna3"},0);
                if (tb_Pessoas == null) tb_Pessoas = new JTable();
                tb_Pessoas.setModel(modelo);

                /*
		modelo.setColumnCount(3);
		if (tb_Pessoas == null) {
			tb_Pessoas = new JTable(modelo);
			tb_Pessoas.setBounds(new Rectangle(43, 117, 375, 80));
			tb_Pessoas.setShowGrid(true);
		}
                */
		return tb_Pessoas;
	}

Blz brother!?!
Qq coisa, grita ae.
Abraco!

ViniGodoy

Certifique-se que seu JTable foi colocado num JScrollPane.

S

Valeu demais pessoal.

Funcionou perfeitamente depois de ter colocado o JScrollPane. Obrigado pela força.

Abraço

ViniGodoy

Aproveite também para se livrar do DefaultTableModel. Leia os links na minha assinatura para aprender a usar o JTable.

Criado 6 de agosto de 2010
Ultima resposta 9 de ago. de 2010
Respostas 4
Participantes 3