0 0

swing NimbusLookAndFeel外观 怎么修改字体5

Font font = new Font("Dialog", Font.PLAIN, 12);
for (Enumeration<?> keys = UIManager.getDefaults().keys(); keys
.hasMoreElements();) {
String key = keys.nextElement().toString();
if (key.endsWith("font")) {
UIManager.put(key, font);
}
}

目前使用以上的方式,只对仅有的几个控件生效,有TitleBorder\JTextFiled等,奇怪的是对JLabel、TableHeader并不生效。


网上查遍资料,没有类似的情况。
所以只有在这里请教大家了。
2013年4月27日 14:56

2个答案 按时间排序 按投票排序

0 0

不能简单的设置样式Swing的NimbusLookAndFeel:

UIManager.setLookAndFeel(new NimbusLookAndFeel());


把你上面的写法改成:
UIManager.setLookAndFeel(new NimbusLookAndFeel() {
	@Override
	public UIDefaults getDefaults() {
	UIDefaults ret = super.getDefaults();
	ret.put("defaultFont", new Font("黑体", Font.PLAIN, 22));
	return ret;
	}
});


我已经测试过,对所有的控件都有效

2013年4月27日 16:24
0 0

在同一个界面么?如果在同一个界面,看是否单独设置了JLabel的字体,如果不在同一个界面,在另一个界面初始化的时候需要重新调用你上面的设置方法。

2013年4月27日 15:39

相关推荐

Global site tag (gtag.js) - Google Analytics