我该如何设置所有JLabel实例的默认字体.而不是单独为每个JLabel设置字体.
解决方法
使用
UIManager
定义JLabel的默认字体:
- import java.awt.FlowLayout;
- import java.awt.Font;
- import javax.swing.JFrame;
- import javax.swing.JLabel;
- import javax.swing.UIManager;
- public class LabelFont {
- public static void main(String[] args) {
- Font oldLabelFont = UIManager.getFont("Label.font");
- UIManager.put("Label.font",oldLabelFont.deriveFont(Font.PLAIN));
- JFrame f = new JFrame("LabelFont Test");
- f.setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE);
- f.getContentPane().setLayout(new FlowLayout());
- JLabel df = new JLabel("Default JLabel font");
- f.getContentPane().add(df);
- JLabel ef = new JLabel("Font explicitly set");
- ef.setFont(oldLabelFont);
- f.getContentPane().add(ef);
- f.pack();
- f.setVisible(true);
- }
- }
途经:http://coding.derkeiler.com/Archive/Java/comp.lang.java.help/2005-04/msg00395.html