Ajuda com JOptionPane (não fechar com "x")

Bom dia pessoal,
Minha dúvida é o seguinte, eu queria saber como impedir que ao clicar no ‘x’ de sair do JOPtionPane ele continue lá, forçando assim o usuario a clicar no yes, no ou cancel.
Vi que tem um exemplo disso no site da oracle, mas sinceramente aquilo me confundiu mais, e como sou meio iniciante resolvi perguntar aqui pra ver se alguém me da um exemplo mais simples!
Vlw!

Geralmente o x do JOptionPane é equivalente ao cancel.

Mas se vc realmente quiser fazer isso, você deve usar o método createDialog:

[code]import javax.swing.JDialog;
import javax.swing.JOptionPane;

public class NaoFeche {

public static void main(String[] args) {
	JOptionPane pane = new JOptionPane("Tem certeza?", JOptionPane.QUESTION_MESSAGE, JOptionPane.OK_CANCEL_OPTION);
	JDialog dialog = pane.createDialog("Confirmação");
	dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);		
	dialog.setVisible(true);
}

}
[/code]

Se você quiser desabilitar também que a Dialog feche com ESC, aí só copiando do exemplo da Oracle mesmo:
http://download.oracle.com/javase/tutorial/uiswing/components/dialog.html#stayup

Só não clicando no ‘X’ já serve…
Brigadão mesmo!

Eu acho que quando o usuário clica no X, deve considerar que ele quis clicar em Cancel :slight_smile: