Wie kann man ein einfaches Abfragefenster in der Art eines JavaScript 'confirm()' erzeugen?

Entscheidungsfenster lassen sich mit Hilfe der swing-Klasse JOptionPane erzeugen.

In der einfachsten Form stellt die Klasse die mehrfach überladene Methode showConfirmDialog() bereit, mit der das gewünschte Fenster erzeugt und wunschgemäß konfiguriert werden kann.

import javax.swing.ImageIcon;
import javax.swing.JOptionPane;

public class EntscheidungsfensterClass {

    public static void main(String[] args) {
        showDialogs();
    }
    
    public static void showDialogs() {
        JOptionPane.showConfirmDialog(null, "Eine Meldung");

        ImageIcon icon = new ImageIcon("bild.jpg");
        int antwort = JOptionPane.showConfirmDialog(null, "Eine Meldung", "Meldung", JOptionPane.YES_NO_CANCEL_OPTION,
                JOptionPane.INFORMATION_MESSAGE, icon);

        if (antwort == JOptionPane.OK_OPTION) {
            System.out.println("Alles ok!");
        } else if (antwort == JOptionPane.NO_OPTION) {
            System.out.println("Nichts ist ok!");
        } else if (antwort == JOptionPane.CANCEL_OPTION) {
            System.out.println("Abbruch!");
        } else if (antwort == JOptionPane.CLOSED_OPTION) {
            System.out.println("Fenster geschlossen!");
        }
    }
}

Das Beispiel zeigt zwei mit dieser Methode erzeugte, sich nacheinander öffnende Entscheidungsfenster und demonstriert deren Konfigurationsmöglichkeiten.
Der erste Parameter enthält in jedem Fall eine Referenz auf das Elternfenster des Dialogs. Er kann auch null sein. Mit dem zweiten wird der String der Meldung/Frage übergeben.
Die zweite Variante der Methode weist im Einzelnen die folgenden Parameter auf:

Der Optionstyp bestimmt die Anzahl und den Typ der zur Auswahl angebotenen Buttons:

Wie beim Meldungsfenster auch stehen fünf verschiedene Meldungstypen zur Verfügung, die bei Verwendung der ersten Methodenversion jeweils einen Standard-Fenstertitel und ein Standard-Icon liefern:

Beim Anklicken der Buttons wird je nach Buttontyp ein spezieller int-Wert zurück gegeben, der zur Auswertung der Entscheidung abgefragt werden kann. Es sind dies:

Wenn Ihnen javabeginners.de gefällt, freue ich mich über eine Spende an diese gemeinnützigen Organisationen.