Dies funktioniert, wenn dieses Fenster fokussiert ist. Wenn der Benutzer jedoch das Fenster schließt, indem er mit der Maus über die Taskleiste fährt und dort auf die Schaltfläche „Schließen“ klickt, erhält manchmal das Fenster den Fokus, manchmal blinkt es aber auch nur in der Taskleiste (und wird nicht fokussiert). Ich brauche das, um mich konsistent zu verhalten. Wenn dies plattformspezifisch ist, gibt es möglicherweise keine Lösung (ich verwende Windows 11).
Code: Select all
window.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
window.addWindowListener(new WindowAdapter() {
public void windowClosing(final WindowEvent e) {
window.requestFocus();
window.toFront();
JOptionPane.showMessageDialog(window, "Not saved", "Not saved", JOptionPane.ERROR_MESSAGE);
}
});

Mobile version