Como que eu faço para atualizar um jframe atraves de um JInternalFrame

5 respostas
M

bom galera eu tenho um Jframe Principal atraves dele eu chamo um Jinternalframe depois eu volto para o jframe principal porem eu tenho que atualizalo pois os texto dos jlabel sao alterados como que eu faço isso

5 Respostas

root_

amigo… sua duvida ta muito vaga…
tipo: o InternalFrame e o Frame estao na mesma classe?

poste o trecho do código, assim fica mas facil de te ajudar.
Nos ajude a te enteder melhor, que nós ajudaremos vc com mais clareza e satisfação.

Abraços!

M
este e o codigo do botao que chama o jinternalframe
private void jbtnM1ActionPerformed(java.awt.event.ActionEvent evt) {                                       
AbrirMesa abrirmesa = new AbrirMesa();
Principal princ = new Principal();
abrirmesa.jtxfMesa1.setText("1");
if (jLabM1.getText().equals("FECHADA")){
jDesktop.add(abrirmesa);
abrirmesa.setVisible(true);
//princ.jLabM1.setVisible(false);
try{
abrirmesa.setSelected(true);
}catch(Exception e){}

}
este o codigo do botao abir que esta no jInternalframe
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
Principal princ = new Principal();

princ.jLabM1.setText("ABERTO");

//princ.jLabM1.revalidate();
//princ.setVisible(false);
//princ.setVisible(true);
this.dispose();

o que eu quero faser e qdo eu clicar neste botao ele vai setar o jLabM1 no jframePrincipal
ok
se eu abrir um outro jframePrincipal ele ja abre atualixado porem eu estou ficando com os dois abertos
o que nao pode acontecer e eu tambem nao posso fechalo pois como ja disse ele e o jFrame principal entao eu preciso atualizalo
ve assim eu consegui me expressar melhor

depois que

root_

Seguinte, eu costumo criar meus JInternalFrames em classes separadas, ou seja, em um arquivo separado do Frame Principal.

no seu caso, se o JInternalFrame for um obj da classe Principal ( a que estende o frame principal), basta vc fazer soh o jLabM1.setText(“ABERTO”);
se n for, crie uma referencia Publica e Estática.

tipo`na classe do Frame Principal faz isso:

public static Pricipal principal;

ai na inicializaçao dos objs vc acrescenta: principal = Principal.this;

ai la dentro do código onde vc cria outra referencia que vai fazer referencia ao principal: public static Principal princ;

e la dentro do codigo do botao que vc quer ter acesso ao frame faça: princ = Principal.principal;

assim vc vai ter acesso a tudo que ta dentro do Frame Principal da seguinte forma: princ.JLabelExemplo.setText(’‘sadasdad’’)’;

espero ter te esclarecido, caso n. Vamo ter que esperar até eu voltar pra casa, la eu faço um exemplo e mando o Projeto do Netbeans feito pra vc.

M

Desculpa ter demorado a responder mas obrigado pela dica vou ver se consigo faser se nao te envio o projeto para vc dar uma olhada ok

kenshin6x

amigo estou com mesmo problema.
fiz tudo que voce disse porem:

ele insere o valor corretamente.
porem quando o evento é executado novamente ele nao insere o novo valor, permanece o valor que ja havia sido setado anteriormente.
sabe oq pode esta acontecendo?

Criado 25 de outubro de 2007
Ultima resposta 16 de mai. de 2008
Respostas 5
Participantes 3