JTable

6 respostas
V

Galera,

desculpem, Mas não estou consequindo fazer funciona minha JTable.
A Jtable esta dentro de um JScroll e dentro de uma JTabbedPane.

+ JTabbedPane 
          +     
          |
          +----> JscrollPane
                      +
                      |
                      +--->  Jtable;

Monto a Jtable em uma função. public void createTables(String[][] Col, String[][] Dat) como seque abaixo

No JtextFiled tenho um actionlistener que faz uma pesquisa no BD pelo código ID, que retorna um Vetor com linhas e colunas que irá alimentar minha Jtable, até aqui tudo bem. Ao realizar outra entrada o Jtable e atualizada, porém ao clicar nas linhas ou mudar de abas e retornar aparece os dados do ID anterior. Já useo upadateUI(). repaint() entre outros e nada.

Alquem poderia me ajudar.

seque a função.

public void createTables(String[][] Col, String[][] Dat)
{

DefaultTableModel modelo = new DefaultTableModel(Dat, Col);
	jTabela = new JTable(modelo);
	JTableHeader header = jTabela.getTableHeader();
	header.setBackground(Color.yellow);
	jTabela.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
	jTabela.getColumnModel().getColumn(0).setPreferredWidth(550); 
	jTabela.getColumnModel().getColumn(1).setPreferredWidth(550); 
	jTabela.getColumnModel().getColumn(2).setPreferredWidth(95); 
	jTabela.getTableHeader().setReorderingAllowed(false); 
	jTabela.getTableHeader().setResizingAllowed(false);  
	jTabela.setAutoCreateColumnsFromModel(false);    
	JScrollPane scroll = new JScrollPane(jTabela);
	scroll.setViewportView(jTabela);
	scroll.setBounds(05,05,1200,250);
	pTable.add(scroll);
}

6 Respostas

F

o que está acontecendo? ela não aparece? …explica melhor…

uma dica: qd for postar o código, coloca colchetes a palavra “code” dentro dos colchetes no início do código e no fim do código colchetes e dentro põe “/code”

V

Desculpe Não sabia que tinha que colocar [code]. Vlw

Caso e o sequinte, A tabela aparece sim

Quando digito ID " Um Codigo" no JTextFiled, a Tabela e preenchida normalmente com os dados corretos.
1) quando digito um novo ID "Codigo", a tabela e preeenchida com os dados referentes a esse codigo, porem ao clicar em qualquer celula ou linha me aparece os dados (Registros) do ID " Codigo" anterior.
2) Isso tambem me acontece quando troco de aba que busca outra tabela

F

posta o código onde você manda setar a tabela com o valor do textField.

V

Seque

if(e.getSource()==tIvao) 
		{
				if(tIvao.getText().equals(""))
				{
					JOptionPane.showMessageDialog(null," Codigo Ivao não pode ser branco ou nulo !", "ATENÇÃO",JOptionPane.ERROR_MESSAGE);
					tApto.requestFocus(); 
				}
				else
				{
					//Acessa o banco de dados
					VpCon  Con = new VpCon();
					if(Con.Connecta()) 
					{
						boolean bAchou;
						bAchou = Con.conectaTabela(tIvao.getText());
						if(bAchou)
						{
							if(Con.Connecta())	
							{ 
								jTabelaRetorno=null;
								jTabelaRetorno    = Con.getTableIvao(tIvao.getText());
								CreateTables(colunas, jTabelaRetorno);
								Con.fechaConexao(); 
							}

						}
					}
					Con.fechaConexao();
					tPrefixo.requestFocus(); 
				}  
			
		}
F

Cara…assim não deu pra concluir muita coisa em função do código…mas o que eu sujiro seria:

Pegar o valor ou texto que vc quer setar na tabela e fazer o seguinte:

suaTabela.setValueAt(seuTextField.getText(), IndexLinhaSuaTabela, IndexColunaSuaTabela);

espero ter ajudado

V

RESOLVIDO

TKS

Criado 6 de fevereiro de 2009
Ultima resposta 7 de fev. de 2009
Respostas 6
Participantes 2