Wie kann man den Text in einem Meldungsfenster (Message Dialog) im Mittelsatz setzen?

Die Klasse JOptionPane deklariert mehrere überladene Methoden, mit denen sich diverse Dialog-Typen erzeugen lassen. Allen Methoden können Komponenten übergeben werden, die eine vielfältige Anpassung der Erscheinung gewährleisten.

Im gezeigten Beispiel ist eine Klasse CustomizableMessageDialog deklariert, deren statische Methode zeigeMessage() zwei Parameter vom Typ Component und String übergeben bekommt. Der erste bezieht sich auf die Elternkomponente, an der der Dialog ausgerichtet werden soll. Er kann null sein. Der zweite enthält einen Text, der auf dem Dialog im Mittelsatz gezeigt werden soll.
Um dies zu erreichen wird ein JLabel erzeugt, das bekanntlich auch HTML versteht. Entsprechend wird ein einfacher HTML-Text erzeugt, der in den Tags <html></html> eingeschlossen ist. Zur Textzentrierung dient das veraltete und längst als deprecated markierte center -Tag. Hier ist schade, dass Java an dieser Stelle gar kein und an anderen Stelle kaum CSS versteht.
Das Label und die Komponente werden in der letzten Konstruktor-Zeile an die Methode JOptionPane.showMessageDialog() übergeben, die hier in der einfachsten Version mit zwei Parametern aufgerufen wird.

import java.awt.Component;

import javax.swing.JLabel;
import javax.swing.JOptionPane;

public class CustomizableMessageDialog {

    public static void main(String[] args) {
        zeigeMessage(null, "Dies ist ein <br>zentrierter Text");
    }
    
    public static void zeigeMessage(Component comp, String message) {
    String txt = "<html><center>" + message + "</center></html>";
        JLabel label = new JLabel(txt);
        JOptionPane.showMessageDialog(comp, label);
    }
}

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