Código Java:
Ver originalpublic class VistaPrincipal
extends javax.
swing.
JFrame {
private VistaPrincipal() {
getRootPane
().
getInputMap(javax.
swing.
JComponent.
WHEN_IN_FOCUSED_WINDOW).
put(
getRootPane
().
getActionMap().
put("Cancel",
new javax.
swing.
AbstractAction(){ @Override
public void actionPerformed
(java.
awt.
event.
ActionEvent e
) {
close();
}
});
@Override
public void windowClosing
(java.
awt.
event.
WindowEvent evt
) { close();
}
});
}
private void close(){
java.
awt.
Toolkit.
getDefaultToolkit().
beep(); if (JOptionPane.
showConfirmDialog(rootPane,
"¿Desea realmente salir de la aplicación?",
logger.log(Level.INFO, "Salida del sistema.");
}
}
}
Con ese código, cada vez que presiones la tecla escape te aparecerá una ventana de confirmación preguntándote si deseas realmente salir de la aplicación. Si no deseas dicha ventana de confirmación, pues elimina las filas correspondientes (están dentro del método close() como ya te habrás dado cuenta, y deja sólo lo de System.exit(0) y listo.)
Salu2.