[Resolvido] Modalidades de um JDialog - Qual usar?

Olá galera,

Estou tendo um trabalhão ao usar o JDialog para uma certa situação então preciso de uma ajudazinha. Bom, o caso é o seguinte:

Tenho a minha aplicação que faz em determinado momento abre um JDialog, este JDialog é bem simples, contém apenas algumas informações as quais ficam sendo monitoradas para quando todas estiverem de acordo o botão OK é liberado. Atualmente estou usando o Modality.APPLICATION_MODAL porque preciso realmente que o que estiver abaixo do JDialog não possa ser clicado ou acessado pelo usuário, mas ao mesmo tempo preciso que a barra superior da janela da aplicação, onde tem os botões de fechar, maximizar e minimizar, fiquei acessível, para que o usuário mesmo sem o JDialog ser liberado possa fechar a aplicação toda. Usando o Modality.MODELESS, por exemplo, a barra fica disponível, mas consequentemente todo o resto da aplicação, que estaria “abaixo” do JDialog também fica e isso não posso deixar. A minha dúvida é, se usando o JDialog há a possibilidade de bloquear a aplicação toda menos a barra superior da janela? Se tiver, como faria? E se não tiver, há alguma outra maneira que posso implementar isto?

Para isso vc n muda o tipo de janela, usa-se apenas um JDialog com modal=true
Será uma janela normal e n permitirá “click atrás”

Eu sei, mas preciso que a janela em sí (a barra que tem os botões de fechar, maximizar e minimizar) não fique bloqueada, entende?

mas a barra de qual janela? a da modal n bloqueia.
Da janela de traz vc n vai conseguir liberar, a n ser q talvez consiga oq quer com internalFrames.

É a barra do frame principal da aplicação. Estive pensando no uso do JInternalFrame, mas como eu faria é que não tenho certeza, pois eu abriria o internalFrame a partir de um dos painéis de conteúdo da aplicação, pois tenho o frame principal e dentro dele faço troca de painéis para mostrar os conteúdos (páginas) específicos.

E ainda preciso que essa tela, seja ela JDialog ou JInternalFrame, seja instanciada só uma vez, pois preciso detectar de qualquer página (JPanel) que o usuário estiver, que a mesma já não esteja aberta, estou vendo de implementar o Singleton, resolveria não é mesmo? Ou será que há outra solução mais adequada?

Sobre instanciar só uma vez vc terá que implementar isso na mão, pesquisa por singleton class.

Sobre InternalFrames não posso falar mto, n tnho mta experiência com eles. Minha opinião pessoal é que pior do que usar Swing é usar com InternalFrames, rsrs

Vou ler o artigo, obrigada!

Ah sim, vou dar uma pesquisada melhor e também testar para ver o que se encaixa melhor no meu caso, agradeço a opnião. :wink: