Eu sei que esse problema é batante comum, mas nenhuma sulução funcionou comigo.
Eu tenho um programa que exibe 2 janelas.O programa funciona, mas eu gostaria que a segunda janela fosse exibida em modo Modal.
A primeira janela é um JFrame, a segunda eu já tentei utiliza JFrane e JDialog, mas a janela não abre como modal.
Quando eu utilizo o janela2.show(true); o Eclipse me alerta para o sequinte: The Method show(boolean) from the type Component is deprecated.
O método show não deve ser utilizado. Use o setVisible.
Para mostrar janelas modais, eu uso a classe JDialog, que possui um construtor onde você diz se quer a janela modal ou não.
Muito Obrigado, funcionou.
Mas fiquei com uma 2 dúvidas, fiz o sequinte: Criei a 2ª janela como JDialog e usei o comando setModal(true) para deixar como Modal, depois disso chamei o setVisible(true) e tudo ocorreu bem. Depois eu testei com show() e também funcionou, aparantemente igual, existe algum motivo para eu usar um método e não outro para exibir a janela?
A outra dúvida é quando outra janela abre em cima da minha Modal, ai quando eu volto para o aplicativo que criei atravez da barra de tarefas do windows a 1ª janela é a unica que aparece, ainda sem poder receber o foco, só consigo ver a Modal se minimizar a janela que havia aberto em cima!
Obrigado pela ajuda!
O motivo para não usar o show é que ele está depreciado. Ou seja, em futuras versões do Java, o método pode não mais existir, e portanto seu programa vai deixar de funcionar! 
Quanto à segunda dúvida, eu também estou procurando uma resposta! :lol:
Tenho um programa em que acontece exatamente a mesma coisa! Só consigo trazer a janela modal pra frente via alt-tab.
Eu uso jframe e jinternalframe desta forma:
ActionListener showModal1 = new ActionListener() {
public void actionPerformed(ActionEvent e) {
Unidades Unidades1 = new Unidades();
JPanel glass6 = new JPanel();
glass6.setLayout(null);
glass6.setOpaque(false);
Unidades1.addInternalFrameListener(new ModalAdapter(glass6));
glass6.add(Unidades1);
setGlassPane(glass6);
glass6.setVisible(true);
Unidades1.setVisible(true);
}
};
jButton1.addActionListener(showModal1);
static class ModalAdapter
extends InternalFrameAdapter {
Component glass6;
public ModalAdapter(Component glass6) {
this.glass6 = glass6;
MouseInputAdapter adapter =
new MouseInputAdapter(){};
glass6.addMouseListener(adapter);
glass6.addMouseMotionListener(adapter);
}
public void internalFrameClosed(
InternalFrameEvent e) {
glass6.setVisible(false);
}
}
Renato V. Neto