如何使用Substance LaF获取按钮的文本颜色?

3
在我的Java应用程序中,我需要自定义绘制一个控件,并且需要使用与JButton相同的字体颜色(启用和禁用)。我不想硬编码它们,因为用户可以在运行时更改Substance皮肤。
我知道ColorSchemes,但是我不确定一旦我有了当前皮肤的颜色方案后该怎么做。此外,Substance文档提到了创建自己的颜色方案,但我无法弄清如何检索特定颜色。
2个回答

2

好的,最终我自己解决了:

重要的步骤是找出正确的颜色方案。因为在Substance中每个根窗格都可以有自己的皮肤,所以最好使用getCurrentSkin助手。

SubstanceColorScheme s = SubstanceLookAndFeel
        .getCurrentSkin(myComponent)
        .getEnabledColorScheme(
                SubstanceLookAndFeel.getDecorationType(myComponent)
         );

其他可能性包括getDisabledColorSchemegetActiveColorSchemegetBackgroundColorScheme

然后,您可以使用s.getForegroundColor或来自SubstanceColorUtilities的各种辅助方法。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接