Amigos, estou com uma dúvida
tenho um FramePrincipal neste frame possui um boolean verifica
quando eu abro um novo frame
Frame frame = new Frame(verifica);
ele passa a condição para o proximo frame
no proximo frame eu recebo ele…
this.verifica = verifica;
acontece que quando eu seto esse boolean como true ou false, e eu verifico ele no FramePrincipal, ele nao está atualizando
testei com JtextField por exemplo e ele está passando as informações de um frame para o outro corretamente,
face a isso, não tem como atualizar boolean entre os frames??
obrigado a todos desde já!
Apenas objetos são passados por referência em Java. Variáveis de tipo primitivo são copiadas (passagem por valor).
Um xunxo para isso é criar uma classe assim:
public class BooleanHolder {
public boolean valor;
}
E passar isso como parâmetro. Mas geralmente isso não é necessário. Você pode usar o boolean por valor no outro JFrame e criar um método de get para retornar o valor para quem o chamou.
Outra possibilidade é passar a referência de um Frame para o outro, e inclui um método no frame um que receba o valor de volta.
[code]
public class Frame1 {
public void atualizarVerifica(boolean verifica);
public boolean getVerifica() { return verifica; }
}
public class Frame2 {
Frame1 origem;
public Frame2(Frame1 origem) {
this.origem = origem;
}
public void alterarVerifica() {
origem.atualizarVerifica(true);
}
}[/code]
hummmm obrigado pelas explicacoes