A minha classe Conta_a_Pagar é um JInternalFrame que abre dentro do JDesktop
e quando clico no botão Adicionar abre classe Nova_Conta_a_Pagar que é um JFrame que abre por cima do Conta_a_Pagar
só que dessa forma o JFrame não está “conversando” com o JInternalFrame, ou seja quando chamo meu PreecheJtable() que está na
classe Conta_a_Pagar que é o meu JInternalFrame, o método é executado mas não preenche minha grid.
Criei dois JFrames para fazer o teste e deu certinho
O PreencheJtable está na classe Conta_a_Pagar que é o JInternalFrame e está cendo chamado no
Conta_a_Pagar que é o JFrame
como fazer para o JFrame conversa com JInternalFrame?
Ou seja, assim que clicar no botão Adicionar do Nova_Conta_a_Pagar que é o JFrame os dados sejam exibidos em
Conta_a_Pagar é um JInternalFrame que está dentro do JDesktop com minha grid??
Código do JInternalFrame Contas _a_Pagar onde os dados seram exibidos:
public void Preenche_Jtable(){
try{
java.sql.Statement st = con.createStatement();
//Faz o select de todos os dados que estão no banco
ResultSet rs = st.executeQuery("SELECT * FROM teste");
DefaultTableModel mod = (DefaultTableModel) jTable1.getModel();
mod.setNumRows(0);
try {
//Enquanto tiver registros preenche o JTable, depois vou fazer com que ele pegue sempre o último //registro adicionei no banco
while(rs.next()){
mod.addRow(new Object[]{rs.getString("codigo"),
rs.getString("descricao")});
}
} catch (SQLException erro) {
JOptionPane.showMessageDialog(this, "Erro ao listar na Grid " + erro.getMessage());
st.close();
}
}catch(SQLException ex){
Logger.getLogger(FrameGastos.class.getName()).log(Level.SEVERE, null, ex);
}
} Código do JFrame Novas_Contas_a_Pagar onde eu salvo no banco e em seguida chamo meu
método conta. Preenche_Jtable();
:
private void btAdicionarActionPerformed(java.awt.event.ActionEvent evt) {
try{
java.sql.Statement st = con.createStatement();
st.executeUpdate ("INSERT INTO teste(descricao) values ('" + txtDescricao.getText()+ "')");
JOptionPane.showMessageDialog(null, "Dados Inseridos com sucesso !"+
"","Mensagem do Programa",
JOptionPane.INFORMATION_MESSAGE);
//cria o objeto conta da classe Frame_Nova_ContaPagar
Frame Contas _a_Pagar conta s = new Frame Contas _a_Pagar ();
//Aqui estou chamando o método Preenche _Jtable da classe Frame_Nova_ContaPagar onde faz todos os selectes
//dos dados que estão no banco
conta.Preenche_Jtable();
} catch (Exception event) {
JOptionPane.showMessageDialog(null, "Conexão não estabelecida!" + event
+ "", "Mensagem do Programa",
JOptionPane.ERROR_MESSAGE);
}
} Minha aplicação é Desktop
Grato pela ajuda e fico no aguardo