Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Font size of JDialog title

How do I set the font size of the title of a JDialog. I'm displaying JDialogs on extremely high resolution monitors (5 mega pixels), and the dialog titles are not legible. I need to do this on a per dialog basis because the application is multi-monitor, and some dialogs appear on lower resolution monitors, and some on higher resolution monitors.

like image 759
Jon Avatar asked May 18 '11 20:05

Jon


2 Answers

You can play with setDefaultLookAndFeelDecorated(), but the title bar is not going to look native or like other normal dialogs, but you can try this.

    JDialog.setDefaultLookAndFeelDecorated(true);
    JDialog dialog = new JDialog(frame, "Test");
    dialog.getLayeredPane().getComponent(1).setFont(new Font("Lucida",Font.PLAIN,48));  
    dialog.setSize(300,100);  
    dialog.setLocation(400,200);  
    dialog.setVisible(true); 

outputs the following

enter image description here

Note: the setDefaultLookAndFeelDecorated() method

Provides a hint as to whether or not newly created JFrames should have their Window decorations (such as borders, widgets to close the window, title...) provided by the current look and feel.

so there is no guarantee that it will work the same way on different settings, I would assume.

like image 85
Bala R Avatar answered Nov 01 '22 13:11

Bala R


I don't think there is a good way to change the font size. I would suggest creating a custom dialog based on a Window that would have a larger title and a close button.

like image 38
jzd Avatar answered Nov 01 '22 12:11

jzd