Re: Change Fontsizes Globally
"Volker Raum" <Volker.Raum@heitec.de> wrote in message news:e3pfo0$ob0$1@murphy.mediascape.de...
Hi all,
is there a way to change all fontsizes within a Java Swing Application.
Something like
UIManager.setGlobalFontsize(+3) ; // +3 means that all default fonts are increased in size by 3 ?
needs testing
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.Enumeration;
class Testing extends JFrame
{
public Testing()
{
setApplicationFont(3.0f);//<-------------------------
setLocation(300,200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JComboBox cbo = new JComboBox(new String[]{"abc","123"});
JButton btn = new JButton("OK");
JPanel p = new JPanel();
p.add(btn);
getContentPane().add(new JLabel("I'm a label"),BorderLayout.NORTH);
getContentPane().add(cbo,BorderLayout.CENTER);
getContentPane().add(p,BorderLayout.SOUTH);
pack();
}
public void setApplicationFont(float increment)
{
Enumeration enumer = UIManager.getDefaults().keys();
while(enumer.hasMoreElements())
{
Object key = enumer.nextElement();
Object value = UIManager.get(key);
if (value instanceof Font)
{
UIManager.put(key, new
javax.swing.plaf.FontUIResource(((Font)value).deriveFont(((Font)value).getSize()+increment)));
}
}
}
public static void main(String[] args){new Testing().setVisible(true);}
}