【问题标题】:how change font of all of my components in java如何在java中更改我所有组件的字体
【发布时间】:2011-04-04 04:22:06
【问题描述】:

我想更改或修改所有我的 JFrame 的字体。

就像有一次我改变了字体,所有的框架字体大小都变成了新的东西。

之前我改变了我的窗口的外观和感觉,我认为这种方式可以,但我正在寻找另一种解决方案,如果有的话,请为我提供一个示例。

【问题讨论】:

标签: java swing user-interface fonts


【解决方案1】:

一种可能的解决方案:使用不同的 VM 参数执行代码:

java -Dswing.plaf.metal.controlFont=Tahoma -Dswing.plaf.metal.userFont=Tahoma …

【讨论】:

    【解决方案2】:

    也许您可以创建一个配置文件(或资源文件),当您想要更改某些内容时,请读取文件并设置值。

    资源文件:(当然你可以使用 JSON、XML 或任何你想要的东西。 这只是一个例子) fontNameA: San Serif 字体名称B: XXXX

    fontSizeA: 20
    fontSizeB: 30
    
    backgourdImage………
    
    class StyleProvider{
      …
      public StyleProvider(String yourConfigFilePath){
        /* read it */
      }
      public String getFontName(/* you can write some arguments here*/){
        return something;
      }
      /* other methods */
    }
    
    /* your working code */
    StyleProvider sp = new StyleProvider("filepath")
    font = new Font(sp.getFontName(), Font.PLAIN, sp.getFontSize());
    

    【讨论】:

      猜你喜欢
      • 2015-08-09
      • 2013-04-13
      • 2014-06-14
      • 2018-06-27
      • 1970-01-01
      • 1970-01-01
      • 2012-08-21
      • 1970-01-01
      • 2014-04-05
      相关资源
      最近更新 更多