在用swing做页面的时候,往往需要设置字体样式,那么,如何用一种方法设置字体之后,在后面的其他页面就不需要再次设置字体了呢?

下面这个方法就可以解决了:

/**
	 * 统一设置字体,父界面设置之后,所有由父界面进入的子界面都不需要再次设置字体
	 */
	 private static void InitGlobalFont(Font font) {
		  FontUIResource fontRes = 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) {
		  UIManager.put(key, fontRes);
		  }
		  }
	}



在main方法中,初始化窗口时,加入下面这句:

      InitGlobalFont(new Font("alias", Font.PLAIN, 12));  //统一设置字体

就可以了。

注意:InitGlobalFont 这个方法的调用时在swing界面的入口界面里。