我正在使用Flamingo功能区和Substance Office 2007外观。
当然现在每个控件都有这种外观,甚至是对话框上的那些。
我想要的是类似于Office 2007,其中的色带具有Office 2007外观,但其他控件保持其原生的Vista / XP外观。
是否可以为某些控件指定不同的外观?也许使用某种链接或代理外观和感觉?
答案 0 :(得分:9)
我刚刚发现:自Substance 5.0以后SKIN_PROPERTY可用。
它允许为不同的JRootPanes
分配不同的皮肤(即JDialog
,JFrame
,JInternalFrame
)
一个小技巧:我重写JInternalFrame
以删除额外的边框和标题窗格,使其看起来就像一个无边框面板。这样就可以创建一种印象,即表单/对话框的不同部分具有不同的外观。
答案 1 :(得分:2)
这是一个可以自动更改外观的库。我不确定这会以不同的方式对每个组件进行,但你应该看看它。 pbjar.org
如果你想深入了解/java-look-and-feel-design-guidelines-second-edition
,这本书应该会很有用我很高兴看到一些代码示例,如果有人可以写它,随时可以开始。
修改强>
在此论坛帖子Thread中,我找到了以下说明
Swing使用Look&感觉(PLAF)。 PLF没有附加在每个JFrame上 水平。它们附加在每个VM上 水平。混合几乎是不可能的 PLAF在一个申请中。我有 看了几次尝试,都失败了。
答案 2 :(得分:1)
AppContext
API。每个AppContext
都有自己的事件派发线程和其他“伪全局”。