How can I set text background color in JOptionPane
?
Image:
UIManager UI = new UIManager();
UI.put("OptionPane.background", Color.white);
UIManager.put("Button.background", Color.white);
UI.put("Panel.background", Color.white);
UI.put("OptionPane.foreground", Color.white);
UI.put("OptionPane.messagebackground", Color.white);
UI.put("OptionPane.textbackground", Color.white);
UI.put("OptionPane.warningDialog.titlePane.shadow", Color.white);
UI.put("OptionPane.warningDialog.border.background", Color.white);
UI.put("OptionPane.warningDialog.titlePane.background", Color.white);
UI.put("OptionPane.warningDialog.titlePane.foreground", Color.white);
UI.put("OptionPane.questionDialog.border.background", Color.white);
UI.put("OptionPane.questionDialog.titlePane.background", Color.white);
UI.put("OptionPane.questionDialog.titlePane.foreground", Color.white);
UI.put("OptionPane.questionDialog.titlePane.shadow", Color.white);
UI.put("OptionPane.messageForeground", Color.white);
UI.put("OptionPane.foreground", Color.white);
UI.put("OptionPane.errorDialog.border.background", Color.white);
UI.put("OptionPane.errorDialog.titlePane.background", Color.white);
UI.put("OptionPane.errorDialog.titlePane.foreground", Color.white);
UI.put("OptionPane.errorDialog.titlePane.shadow", Color.white);
JOptionPane.showMessageDialog(null, "Hello world", "HELLO WORLD", JOptionPane.INFORMATION_MESSAGE);
According to various studies, dark text on light backgrounds tends to be most readable. Go for this approach if you're looking for clear and crisp presentation, particularly for web design. White backgrounds: Simple and classic, black text on a white background provides the highest readability ratio.
Changing Text Background Color in CSS. To change the background color of the inline text, go to the <head> section. Simply add the appropriate CSS selector and define the color and background-color property with the values you want.
Why not you simply add a custom JPanel
at this place as shown below :
JOptionPane.showMessageDialog(frame, getLabelPanel(), "Hello World!",
JOptionPane.INFORMATION_MESSAGE);
You can get the JPanel
from a method, like :
private JPanel getLabelPanel() {
JPanel panel = new JPanel();
panel.setOpaque(true);
panel.setBackground(Color.BLUE);
JLabel helloLabel = new JLabel("Hello World!", JLabel.CENTER);
helloLabel.setForeground(Color.WHITE);
panel.add(helloLabel);
return panel;
}
OUTPUT :
Else you can try this to change everything,
uimanager.put("OptionPane.background", Color.BLUE);
uimanager.put("OptionPane.messagebackground", Color.BLUE);
uimanager.put("Panel.background", Color.BLUE);
UPDATED OUTPUT :
try
UIManager UI=new UIManager();
UI.put("OptionPane.background",new ColorUIResource(255,255,0));
UI.put("Panel.background",new ColorUIResource(255,255,0));
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With