Oi.
Não é bem um problema. Eu estou conseguindo realizar a tarefa com sucesso.
É assim: Uma das abas de uma tela mostram os dados de animais cadastrados na tabela.
Só que quando clico em atualizar, os dados são setados de novo, só que o painel também é, e se depois disso o usuário maximizar a tela, vai ficar um erro horrível sobre ela.
Visualização:
codigo:
[code] private void buscaTabela3() {
/** inicialização de conexão ao banco ****/
new conexao();
Statement st3;
ResultSet rs3;
String url3 = "jdbc:mysql://localhost/gado";
String usuario3 = "root";
String senha3 = "2017";
try {
con3 = DriverManager.getConnection(url3, usuario3, senha3);
Vector cabecalho3 = new Vector();
Vector linhas3 = new Vector();
st3 = con3.createStatement();
// Selecionando apenas vacinas ****
rs3 = st3.executeQuery(
“SELECT nomeVacina as ‘Tipo de vacina’, descricao as ‘Descricao’ FROM nomeVacinas”);
//"Vacinas v WHERE v.codproduto NOT IN (SELECT v.codprod FROM vendas v) ");
rs3.next();
ResultSetMetaData rsmd3 = rs3.getMetaData();
for (int i3 = 1; i3 <= rsmd3.getColumnCount(); ++i3)
cabecalho3.addElement(rsmd3.getColumnName(i3));
do {
linhas3.addElement(proximaLinha3(rs3, rsmd3));
}
while (rs3.next());
tabela3 = new JTable(linhas3, cabecalho3);
tabela3.setFont( f );
scroller3 = new JScrollPane(tabela3);
p3.add(scroller3, BorderLayout.CENTER);
validate();
st3.close();
} catch (SQLException sqlex3) {
JOptionPane.showMessageDialog(null, "Erro ao retornar dado!\n" + sqlex3,
"Erro", JOptionPane.ERROR_MESSAGE);
}
}
private Vector proximaLinha3(ResultSet rs3, ResultSetMetaData rsmd3) {
Vector LinhaAtual3 = new Vector();
try {
LinhaAtual3.addElement(rs3.getString("Tipo de vacina"));
LinhaAtual3.addElement(rs3.getString("Descricao"));
} catch (SQLException sqlex5) {
JOptionPane.showMessageDialog(null, "Erro ao retornar dado!\n" + sqlex5,
"Erro", JOptionPane.ERROR_MESSAGE);
} catch (Exception ex5) {
JOptionPane.showMessageDialog(null, "Erro inesperado!\n" + ex5,
"Erro", JOptionPane.ERROR_MESSAGE);
}
return LinhaAtual3;
} // fim do vect[/code]
Ajuda?
Obrigado.