JOptionPane: Java-Dialogfeld showOptionDialog

Ein anderer Dialogfeldtyp in der Klasse java.swing.JOptionPane ist OptionDialog. Es können mehrere Schaltflächen, eine Nachricht oder eine Reihe von JButton-Komponenten angezeigt werden. Dies kann mit der folgenden Methode erfolgen:

showOptionDialog(Rahmen, Nachricht, Titel, TypOption,  typeOptionen für das Nachrichtensymbol default), or:
  • frame: ist die übergeordnete Komponente;
  • message: ist die String-Nachricht, die im Dialog angezeigt werden soll;
  • title: wird als Titel des Dialogfelds verwendet;
  • typeOption: ist eine Ganzzahl, die den Typ der Optionen im Dialogfeld darstellt. Gültige Codes sind: YES_NO_OPTION, YES_NO_CANCEL_OPTION und OK_CANCEL_OPTION;
  • typeMessage: ist eine Ganzzahl, die den in JOptionPane definierten Nachrichtentyp angibt: classINFORMATION_MESSAGE, WARNING_MESSAGE, ERROR_MESSAGE und PLAIN_MESSAGE;
  • icon: ist ein anzuzeigendes ImageIcon-Symbol;
  • Optionen; ist eine Auswahltabelle, die der Benutzer ausführen kann;
  • defaultoder initialvalue ist der Standardwert für select.
In diesem Codebeispiel wird ein Dialogfeld mit Optionen implementiert:

import javax.swing.JOptionPane; 

public class OptionDialog {

public static void main(String[] args) {
int return = JOptionPane.showOptionDialog(null,
"Sind Sie sicher, dass Sie fortfahren möchten?",
"Fehler", 
//JOptionPane ja nein
JOptionPane.YES_NO_OPTION,
JOptionPane.ERROR_MESSAGE,
null, null, null);
}
}
Nach dem Ausführen des Programms wird dieses Dialogfeld mit einer Fehlermeldung und zwei Auswahlschaltflächen "Ja" und "Nein" angezeigt. Sie können Ereignisse planen, z. B. wenn Sie auf die Schaltfläche "Nein" klicken, mit der Sie das Programm beenden. System.exit(0):

JOptionPane.showOptionDialog ja nein

Steuerschaltflächen in JOptionPane.showOptionDialog

Wenn Sie Schaltflächen hinzufügen oder Werte ändern möchten, können Sie dies tun, indem Sie ein Array von Objekten als Auswahloptionen hinzufügen und den Anfangswert auswählen, der standardmäßig ausgewählt wird.

import javax.swing.JOptionPane; 

public class OptionDialog {

public static void main(String[] args) {
Object[] choice={"18-25 Jahre","26-35 Jahre","36-45 Jahre","46-55 Jahre","56 Jahre und älter"};
int choice = JOptionPane.showOptionDialog(null,
"Was ist Ihre Altersgruppe?",
"Altersgruppe",
JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE,
null, choice, choice[0]);
}
}
Result:
JOptionPane.showOptionDialog buttons

Referenzen:
herongyang: showOptionDialog() - Anzeigen von Optionsdialogfeldern
Java Doc: showOptionDialog method