static public void setLF(String filename, Component c) {
if (filename == null || filename.compareTo("") == 0) {
filename = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
//javax.swing.plaf.metal.MetalLookAndFeel
}
try {
try {
UIManager.setLookAndFeel(filename);
} catch (Exception ex) {
Skin skin = SkinLookAndFeel.loadThemePack(filename);
if (skin != null) {
SkinLookAndFeel.setSkin(skin);
SkinLookAndFeel lnf = new SkinLookAndFeel();
UIManager.setLookAndFeel(lnf);
} else {
System.out.println("No GTK theme provided, defaulting to application Look And Feel");
}
}
Font fontsource = new FontUIResource("Dialog", 0, 12);
UIManager.put("Button.font", fontsource);
UIManager.put("Label.font", fontsource);
UIManager.put("Table.font", fontsource);
UIManager.put("TextField.font", fontsource);
UIManager.put("ScrollPane.font", fontsource);
UIManager.put("ComboBox.font", fontsource);
UIManager.put("CheckBox.font", fontsource);
UIManager.put("TitledBorder.font", fontsource);
UIManager.put("RadioButton.font", fontsource);
UIManager.put("ToolTip.font", fontsource);
UIManager.put("TextPane.font", fontsource);
UIManager.put("TextArea.font", fontsource);
UIManager.put("Tree.font", fontsource);
UIManager.put("List.font", fontsource);
UIManager.put("MenuBar.font", fontsource);
UIManager.put("Menu.font", fontsource);
UIManager.put("MenuItem.font", fontsource);
UIManager.put("RadioButtonMenuItem.font", fontsource);
UIManager.put("TableHeader.font", fontsource);
UIManager.put("TabbedPane.font", fontsource);
UIManager.put("OptionPane.messageFont", fontsource);
if (c != null) {
SwingUtilities.updateComponentTreeUI(c);
}
} catch (Exception ex) {
setLF("javax.swing.plaf.metal.MetalLookAndFeel", c);
ex.printStackTrace();
}
}
public static void initGlobalFontSetting(Font font) {//设置全局字体。
FontUIResource fontRes = new FontUIResource(font);
for (Enumeration keys = UIManager.getDefaults().keys(); keys
.hasMoreElements();) {
Object key = keys.nextElement();
Object value = UIManager.get(key);
if (value instanceof FontUIResource)
UIManager.put(key, fontRes);
}
}
//skinlf.jar