【问题标题】:What look and feel component do I set to change the text color of a TitledBorder?我应该设置什么外观组件来更改 TitledBorder 的文本颜色?
【发布时间】:2010-03-04 22:27:33
【问题描述】:

我的 Swing 应用程序中有一组单选按钮,它们周围有如下边框:

radioButtonPanel.setBorder( new CompoundBorder ( 
    BorderFactory.createTitledBorder( " Input Data " ), padBorder ) );

我们的应用程序支持两种外观,一种是浅色的,一种是深色的。在两者之间切换时,边框颜色本身似乎可以正确更改颜色,但文本不会。对于我的生活,我无法弄清楚我应该设置颜色的组件名称是什么。 createTitledBorder() 的文档说它使用默认外观,但我不确定它在哪里使用默认值。我以为是Panel.foreground,但事实并非如此,而且似乎没有其他东西看起来很正确。

有人知道我需要在这里设置哪个外观和感觉组件吗?

【问题讨论】:

    标签: java swing look-and-feel


    【解决方案1】:

    您可以在 TitledBorder 实例上设置标题颜色,或者使用将标题颜色作为参数的构造函数创建一个。

    TitledBorder javadoc 还声明外观中的“TitledBorder.titleColor”属性用作默认值。您可以按如下方式覆盖它:

    UIManager.getDefaults().set("TitledBorder.titleColor", Color.RED);
    

    【讨论】:

    • 是的,绝对是这个。有点恼火,我自己没有找到,但非常感谢您的帮助。
    【解决方案2】:

    而不是调用

    UIManager.getDefaults().set("TitledBorder.titleColor", Color.RED);
    

    你需要打电话

    UIManager.put("TitledBorder.titleColor", Color.RED);
    

    【讨论】:

      猜你喜欢
      • 2021-10-02
      • 2012-09-05
      • 1970-01-01
      • 2013-02-20
      • 1970-01-01
      • 2011-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多