Olá pessoal, estou com um problema… estou pegando dados do banco de dados e jogando para um JTable só que quando eu mostro o resultado as colunas da tabela ficam todas da mesma largura eu queria definir a largura de cada coluna pois existe campos de larguras bem diferentes…
o meu código é o seguinte…
[quote]private void MostraDespesas(String dataini, String datafim){
Vector coluna = new Vector();
Vector linha = new Vector();
try{
con = inic.conexao();
st = con.createStatement();
String sql = “SELECT * FROM DESPESAS WHERE DATAENTDESPESA >= '”;
sql+= inic.data(dataini) + "’ AND ";
sql+= “DATAENTDESPESA <= '” + inic.data(datafim) + “’”;
sql+= " ORDER BY DATAENTDESPESA ASC ";
rs = st.executeQuery( sql );
boolean primeiro = rs.next();
if ( ! primeiro ){
JOptionPane.showMessageDialog(this,“Não tem Despesas Cadastradas neste período”);
con.close();
return;
}
try{
ResultSetMetaData TituloColuna = rs.getMetaData();
totaldespesas = 0.0;
for( int i=2; i <=6; ++i)
coluna.addElement(TituloColuna.getColumnName(i));
do{
linha.addElement(getNextLinha( rs, TituloColuna ));
}while (rs.next());
table = new JTable( linha, coluna );
JScrollPane scroller = new JScrollPane( table );
table.getTableHeader().getColumnModel().getColumn(0).setHeaderValue("Dt.Vencimento");
table.getTableHeader().getColumnModel().getColumn(1).setHeaderValue("Dt.Entrada");
table.getTableHeader().getColumnModel().getColumn(2).setHeaderValue("Despesa");
table.getTableHeader().getColumnModel().getColumn(3).setHeaderValue("Valor(R$)");
table.getTableHeader().getColumnModel().getColumn(4).setHeaderValue("Dt.Pagamento");
scroller.setBounds(20,40,700,150);
this.getContentPane().add( scroller);
validate();
con.close();
TValor.setText(decimal.format(totaldespesas));
}
catch(Exception ex){
JOptionPane.showMessageDialog(null,"Erro ao listar as Despesas");
return;
}
}
catch(Exception ex){
JOptionPane.showMessageDialog(null,“Erro no Banco quando vai realiza a pesquisa”);
return;
}
}
[/quote]
Será que alguém pode me ajudar pra definir alargura de cada coluna…
muito obrigado…