boa tarde, estou com algumas duvidas no fechamento de um form, o que ocorre é o seguindo, eu clico em um botao ele abre o form eu digito um valor click em outro botao ele salva no banco de dados e fecha o form, voltando para o form principal mas nesse form não atualiza os dados eu preciso abrilo novamente para atualizar
tem sim cara, usa padrão Singleton dai você vai usar apenas um objeto instanciado sempre =) acho que isso vai resolver pra você, e quando você for postar um codigo poste dentro de code =)
Giovanni_Ritchie
Adicione um WindowFocusListener na sua janela principal, assim sempre que ela ganhar o focus vc chama um método para atualizar os dados…
publicfinalclasstipo1extendsjavax.swing.JFrame{privatestatictipo1me=newtipo1();intnavegar=0;publicconexaocon_tipo;Stringordenacao;/**Createsnewformtipo1*/publictipo1(){initComponents();con_tipo=newconexao();con_tipo.conecta();con_tipo.executaSQL("select * from tipo ");try{...publicstatictipo1getInstance(){returnme;}}
aqui o outro form
try{Stringsqlinsert="insert into tipo (nome_tipo) values ('"+tf_tipo.getText()+"')";//tipo1f=newtipo1();tipo1.getInstance().con_tipo.statement.executeUpdate(sqlinsert);tipo1.getInstance().con_tipo.resultset=tipo1.getInstance().con_tipo.statement.executeQuery("select * from tipo order by nome_tipo");tipo1.getInstance().con_tipo.resultset.last();dispose();}catch(SQLExceptionerro){JOptionPane.showMessageDialog(null,"Erro ao tentar gravar registro"+erro);}
onde estou errando
G
guialeixo
juro que eu nem sei que que você ta fazendo… dicas divida seu projeto em 3 camadas model, view e control (MVC) use PreparedStatement em vez de statement, singleton você tem que setar o que você quer que ela guarde, e talvez você possa dar um refresh no form ja que ele não atualiza.
syaoran
estou tentando criar singleton para poder atualizar o con_tipo no fechamento do form
publicclasstipo1extendsjavax.swing.JFrame{intnavegar=0;conexaocon_tipo;Stringordenacao;/**Createsnewformtipo1*/tipo1(){initComponents();con_tipo=newconexao();con_tipo.conecta();con_tipo.executaSQL("select * from tipo ");try{con_tipo.resultset.first();tf_codigo.setText(con_tipo.resultset.getString("cod_tipo"));tf_nome.setText(con_tipo.resultset.getString("nome_tipo"));}catch(SQLExceptionerro){JOptionPane.showMessageDialog(null,"Não localizou dados"+erro);}}publicstatictipo1getInstance(){returntipo1;//estadandoerroaquiporquê?}