ola!
o mais facil eh usar as classes java.util.Observer e (interface) java.util.Observable
como o “observavel” eh uma JPanel, mantenha um Observer como um campo da sua classe e exponha um metodo para adicionar Observers.
Quando o evento for disparado, chame o metodo notifyObservers ( ou algo do tipo )
No lado do Observer, no metodo update, coloque as coisas que vc quer que sejam executadas.
eh basicamente isso (ok nao esta muito mastigado, mas acredito que vc consiga se virar a partir dai)
Eu tenho duas classes cujos objetos têm relação de contenção (é esse, o nome? Sei que um objeto (B) é declarado na classe do outro (A)).
Tudo bom?
Olha eu acho que o verdadeiro nome para o que voce chamou de contenção é composição.
Uma maneira simples de voce fazer isso e passar uma referencia do objeto A para o construtor do objeto B e quando a ação tem de ocorrer no objeto B acontecer , voce chama algum método e A unsando a referência passada no construtor.
Acho que este seria uma boa solução!
Boa sorte!
Luiz_Rocha
Saudações.
Eu tenho duas classes cujos objetos têm relação de contenção (é esse, o nome? Sei que um objeto (B) é declarado na classe do outro (A)). E eu preciso fazer com que o objeto A “saiba” quando determinado evento ocorrer no B.
Na prática, o objeto B é uma janela que precisa retornar um valor (um array de inteiros) para A quando um botão (botão esse que dispara o setVisible(false) na janela do B) é presionado.
Tudo o que eu consegui foi retornar o array no momento em que a janela B é aberta, e isso não é o desejado.
Provavelmente a minha solução está no uso de eventos, mas eu tentei uma “gambiarra” - típico de quem não tem tanto “knowledge” - e não deu certo…
“E agora, doutor?” O meu caso tem solução?
Peço às almas encarecidas e aos Mestres Anciãos do JAVA (ou a qualquer um!) que me ajude. Qualquer trocadinho vale.