Por exemplo se em uma aplicação eu chamo um JOptionPane.showMessageDialog() por exemplo, minha aplicação fica "travada"até eu terminar de interagir com o comando, como faço isso em um JFrame por exemplo, o primeiro abre um segundo, quando o segundo é finalizado, o primeiro continua… Terei que modificar os threads? Queria resolver isso de forma elegante e principalmetne entender o que ocorre quando chamo um JOptionPane.
Complementando o que o mestre thingol falou, só é possível construir janelas modais em Swing utilizando JDialog. O JFrame não permite esse comportamento. Repare que o método setModal() só existe na classe Dialog (pai do JDialog). O JFrame é filho de Frame…