swing一次性改变所有字体

本文介绍了一种在Java Swing应用程序中统一设置所有组件字体的方法,通过遍历UIManager的默认属性来实现全局字体的定制,避免了逐一为各组件设置字体的繁琐。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

swing默认的字体用于显示中文还是觉得有些丑的,以前一次性设置过swing中某个组件的字体,记得代码如下

Font sysFont = new Font("宋体", Font.PLAIN, 12);
UIManager.put("TextField.font", sysFont);
UIManager.put("Label.font", sysFont);

 不过如果swing的带的组件挺多的

TextPane.font
ToggleButton.font
CheckBoxMenuItem.acceleratorFont
Panel.font
PopupMenu.font
OptionPane.font
InternalFrame.titleFont
Label.font
Tree.font
ScrollPane.font
MenuItem.acceleratorFont
TextField.font
Viewport.font
MenuBar.font
FormattedTextField.font
DesktopIcon.font
TableHeader.font
ToolTip.font
PasswordField.font
Table.font
TabbedPane.font
ProgressBar.font
CheckBoxMenuItem.font
ColorChooser.font
Button.font
TextArea.font
Spinner.font
RadioButtonMenuItem.acceleratorFont
RadioButton.font
TitledBorder.font
EditorPane.font
RadioButtonMenuItem.font
ToolBar.font
MenuItem.font
CheckBox.font
Menu.font
Menu.acceleratorFont
ComboBox.font
List.font

 不至于每个都设置吧

public static void initGobalFont(Font font) {
	FontUIResource fontResource 
		= new FontUIResource(font);
	for(Enumeration<Object> keys = UIManager.getDefaults().keys(); keys.hasMoreElements();) {
		Object key = keys.nextElement();
		Object value = UIManager.get(key);
		if(value instanceof FontUIResource) {
			System.out.println(key);
			UIManager.put(key, fontResource);
		}
	}
}
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值