Duvida Basica - Navegabilidade entre Janelas(JFrame)

Vou TENTAR explicar a duvida.

É o seguinte: “passar” de uma janela para outra.

Exemplo:
Tenho duas classe que herdam de JFrame, chamadas F1 e F2

F1 é a principal, é a primeira janela que aparece quando a aplicacao é iniciada.

quando quero ir para segunda janela, simplesmente:
F2 f2 = new F2();
f2.setVisible(true);

ok

Mas e quando eu preciso voltar de f2 para f1??? Como vou referenciar a janela anterior?

Para mim a solucao seria criar uma classe que instaciaria TODAS as janelas e permitiria que uma janela pudesse referenciar outra. Mas o fato de criar TODAS as janelas não seria desperdicio de memoria?

Outra: Qual o metodo para “destruir” uma janela.

Toda isto é para fazer uma aplicação passo-a-passo, em que o cliente pode voltar para o passo anterior.

Agradeço qualquer ajuda

VENOM

[quote=venomtotal]Vou TENTAR explicar a duvida.

Mas e quando eu preciso voltar de f2 para f1??? Como vou referenciar a janela anterior?

Para mim a solucao seria criar uma classe que instaciaria TODAS as janelas e permitiria que uma janela pudesse referenciar outra. Mas o fato de criar TODAS as janelas não seria desperdicio de memoria?

[/quote]

Eu faço isso.

Veja bem, se vc quer ter duas ou mais janelas independentes num sistema todo baseado num único processo esta janelas deverão nascer todas juntas e, de certo modo, num mesmo lugar. É um problema que está caindo no esquecimento uma vez que 80% ou mais dos grandes projetos são hoje baseados em http.

Meus modais recebem no construtor (e bloqueiam foco tb) o frame que os disparou, mas no caso de duas ou mais janelas para funcionalidades diferentes, bom, eu as crio num canto e vou chamando de acordo com a necesidade.

E com relação a desperdiçar memória, bom, me diga o que vc prefere: destruir e criar objetos o tempo todo ou alocar um bocado de memória logo assim de cara. Se fosse feito em C ou C++ vc não teria essa dúvida; vc levantaria todas as janelas de uma vez! Então porque é java a dúvida aparece, :smiley:

Pois não a tenha e levante logo as suas janelas. E se vc botar um look’n feel diferente vai ter quem diga que é feito em VB,ou Delphi, :smiley:

Se restou alguma dúvida pode preguntar, blza? E vc está indo bem, chegou à conclusão lógica sozinho!

té+.

opa, valeu.

ainda bem que to indo no caminho certo.

Só restou a duvida se em swing existe o metodo para “destruir” o jframe. Ou o negocio é apenas setVisible(false) e os frames serao destruidos apenas quando a aplicacao for encerrada?

venom

o q vc poderia fazer seria ao invés de criar dois JFrames criar um único JFrame e ir alterando os painéis que iriam aparecendo dentro dele, através do CardLayout, eu já fiz uma vez um passo a passo e fica fácil de fazer, fica perfeito…de uma olhadinha em como funciona o CardLayout…depois eu posto um código exemplo aqui pra vc, vou dar uma procurada aki pra ver onde q tah o código, hehehe!
T++