我正在创建一个继承自 NimbusLookAndFeel
的外观,让我知道如何注册我自己的组件以使用它们的自定义 Painter。
例如,像这样的 ButtonPainter
类的 JButton
曾经被绘制过。还想知道如何注册不同的状态(例如 BACKGROUND_ENABLED
, BACKGROUND_FOCUSED
...)
你能指导我如何做到这一点吗?其实我想做的是一个自定义的选项卡式 Pane ,这使用他们自己的 Painter。
编辑:嗯,我想我没有解释好。
我想制作一个自定义组件,例如 MyCustomTabbedPane
,它的风格化源自从 Nimbus 继承的外观和感觉。我可以注册自己的 UI 类吗?
我如何制作自己的 UI 类?这个类应该有哪些逻辑?
另一个问题,我如何分配此类 Painter,例如 MyCustomTabbedPanePainter
定义我自己的组件状态,Nimbus 也是如此,例如 BACKGROUND_ENABLED
。
感谢和问候!
最佳答案
首选方式,有几个Look and Feels based on Nimbus
另一种选择,有一些自定义解决方法来自定义
Nimbus 外观
,其中最复杂的一个是 NimbusThemeCreator by @aephyr(为 Java6 导入???)最困难的方法,必须创建
自己的 xml 文件(参见第 2 点。)
并覆盖UIManager 的所有键
,一个地方的所有内容都是 UIManager Defaults by @camickr最简单的方法是仅覆盖 Primary Colors & Secondary Colors ,然后
Colors
被应用并且对大多数JComponents
有效
Renderers
和Highlighter
是单独的问题,必须决定是使用标准键还是覆盖此键,例如XxxRenderer
首选,如果您为具体的JComponent
覆盖Nimbus UIDefaults
和Renderer
,则Colors
取自Renderer
不是来自UIDefaults
关于java - 具有 Nimbus 外观和感觉的自定义组件和 Painter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14503002/