Ajuda com jInternalFrames

Boa tarde a todos!

Gente o negócio e o seguinte: estou tentando desenvolver uma aplicação MDI que possua as seguintes caracteristicas:

  • Não seja possivel abrir inúmeras janelas de um mesmo formulário
  • Quando você sai de um formulário e existe outro atras, este seja automaticamente selecionado
  • E de preferencia que retire os formulários da memoria ao inves de apenas ocultá-los (pense em 10 ou mais forms abertos e fechados consecutivamente o dia inteiro… como fica a memória… aquela história toda…)

Para resolver o problema de qdo vc fecha um form o que esta atras ser selecionado, utilizei o metodo meuFrameInterno.setClose(true) porem so funcina uma vez (conforme consta ate na api espec.)

Para tentar fazer com que só seja aberto um unico form (uma unica instancia) tentei testar:
if (meuInternalFrame == null) nao instanciando ele de inicio, claro
{
meuInternalFrame = new meuInternalFrame();
desktop.add(meuInternalFrame);
}
E assim vai tentei de tudo mas parece que “as peças não se encaixam”!!!

agradeço muito se alguem ai poder me ajudar e o que eh pior tenho urgência se não o resto não anda!
Valeu galera…

ja tentou o internalframe.dispose(); ???

caiozanchetti,

Pra fechar eu sempre utilizo o setClosed(true).
Pra setar o focus vc tem que utilizar o requestFocus.
Quanto a criar uma aplicação MDI sem possibilidade de abrir várias janelas eu não entendi, é várias da mesma janela ou várias janela de várias telas que não deverá ser possível abrir ?

Abraço,
Maicon

Ok, Maicon eu também tentei utilizar o internalFrame.setClosed(true) porque observei que somente desta forma ele seleciona o internalFrame que esta por trás. (utilizando dispose() por exemplo, o que esta atras não fica selecionado automaticamente (fica ‘inativo’)…)
Como vc faz para fechar este formulario (este que vc da um .setClosed(true))? porque pra mim eu fecho ele na primeira vez… se eu reentrar no formulario e tentar fecha-lo ele não fecha. (Acredito ter lido sobre isto na API)

Você não poderia enviar talvez um pequeno exemplo de como vc trabalha com aplicações MDI?

Obrigado