Frage

Ich versuche, ein Wort (Variable) eine Nachrichtenbox fett in meinem Java-Programm zu machen. Hier ist mein Code:

int n = messageBox.showConfirmDialog(frame,
"The File "+ file +" already exists." +
"\n" + "Do you want to replace it?",
"File Already Exists!",
messageBox.YES_NO_OPTION);

Ich mag die Variable „Datei“ erscheinen in fett gedruckten Text in meinem Meldungsfeld machen. Bisher habe ich nur in der Lage, das gesamte Meldungsfeld erscheint in fett, oder nichts davon überhaupt zu bekommen. Wie kann ich das tun?

War es hilfreich?

Lösung

Versuchen Sie Ihren Text in HTML-Tags wickeln. Viele der Swing-Komponenten unterstützen einige grundlegende HTML wie kursiv, fett und unterstrichen. lesen Zum Beispiel sollten Sie Ihren Code ändern:

int n = messageBox.showConfirmDialog(frame,
"<html>The File <b>"+ file +"</b> already exists." +
"\n" + "Do you want to replace it?</html>",
"File Already Exists!",
messageBox.YES_NO_OPTION);

Andere Tipps

HTML Mit funktioniert gut für mich. Das Problem ist, dass die Standardschriftart bereits fett ist, so dass Sie nicht eine andere sehen.

Versuchen Sie, einen „italic“ Tag oder vielleicht eine „font“ -Tag und eine andere Farbe geben Sie den Unterschied zu sehen.

oder stattdessen in einem Text von geben String, können Sie in Ihrem eigenen JLabel mit einer benutzerdefinierten Schriftart übergeben. So etwas wie:

String message = "<html>The File <b> file </b> already exists</html>";
JLabel label = new JLabel(message);
label.setFont( UIManager.getFont("TextField.font") );

int result = JOptionPane.showConfirmDialog(
    this,
    label,
    "File already exists!",
    JOptionPane.YES_NO_OPTION);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top