swing里默认的菜单字体和按钮字体都是不知名的字体,而且还是粗体,现在我想要宋体14号大小,我有没什么办法可以不用一个个的菜单项、按钮的设置?我在网上找到方法是这样的
Font font = new Font("宋体",Font.PLAIN,15);
UIManager.put("JMenuBar.font", font);
事实证明这个方法是骗人的,根本没有反应
------解决方案--------------------
如下:我本地测试是可以的,Menu和MenuItem都可以变成宋体,如果还是不行,先确认本机是不是有宋体
- Java code
import java.awt.Font;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.UIManager;@SuppressWarnings("serial")public class FontTestFrame extends JFrame { public FontTestFrame() { this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JMenuBar menubar = new JMenuBar(); JMenu m = new JMenu("文件"); m.add(new JMenuItem("打开")); menubar.add(m); this.setJMenuBar(menubar); this.add(new JButton("测试 ")); this.pack(); this.setVisible(true); } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Font font = new Font("宋体",Font.PLAIN,15); UIManager.put("Button.font", font); UIManager.put("Menu.font", font); UIManager.put("MenuItem.font", font); new FontTestFrame(); }}