【发布时间】:2010-11-06 15:03:27
【问题描述】:
如何在 Swing 应用程序中为 JButton、JPanel 等各种 Swing 组件引入 CSS 样式?
【问题讨论】:
-
这里是一个开源库 that 帮助使用自定义 css 规则设置 swing 组件的样式。
如何在 Swing 应用程序中为 JButton、JPanel 等各种 Swing 组件引入 CSS 样式?
【问题讨论】:
你没有。一些 Swing 组件使用的HTML parser 甚至不支持大多数 HTML 标签;它根本不支持 CSS。
如果您需要 Java 应用程序中的高级 HTML 支持,则必须使用 third-party components 和 provide it 之一。
【讨论】:
您可以使用各种 Swing 属性来描述将由所有组件(如字体等)共享的 UI 默认值,但正如 Michael 所提到的那样;没有办法做完整的CSS。例如:
FontUIResource f = new FontUIResource("Tahoma", Font.BOLD, 12)
UIManager.put("MenuBar.font", f); //javax.swing.UIManager
UIManager.put("Menu.font", f);
UIManager.put("RootPane.titleFont", f);
【讨论】:
我在一些项目中成功使用了 javacss。为了我的目的,我放弃了对 javafx 的支持,并修复了严重的内存泄漏(可能还有更多)。我为此创建了一个 github 项目,因为许可证是 gpl:
【讨论】: