java我可以在同一个Swing应用程序中使用两种不同的外观吗?
我使用的是Flamingo ribbon和Substance Office 2007外观
当然,现在每个控件都有这样的外观,即使是对话框上的
我想要的是像Office2007一样的东西,色带有他们的Office2007外观,但其他控件保持他们的原生Vista/XP外观
是否可以为某些控件指定不同的外观?也许使用某种链接或代理外观
你可以在下面搜索框中键入要查询的问题!
我使用的是Flamingo ribbon和Substance Office 2007外观
当然,现在每个控件都有这样的外观,即使是对话框上的
我想要的是像Office2007一样的东西,色带有他们的Office2007外观,但其他控件保持他们的原生Vista/XP外观
是否可以为某些控件指定不同的外观?也许使用某种链接或代理外观
# 1 楼答案
不幸的是,Swing在幕后做了很多“psuedo global”的事情。好了,唯一能始终如一地做到这一点的方法就是使用私有的
AppContext
API。每个AppContext
都有自己的事件调度线程和其他“psuedo globals”# 2 楼答案
我刚刚发现:Substance 5.0既然SKIN_PROPERTY是可用的
它允许将不同的皮肤分配给不同的
JRootPanes
(即JDialog
,JFrame
,JInternalFrame
)一个小技巧:我覆盖
JInternalFrame
以删除额外的边框和标题窗格,使其看起来就像一个无边框的面板。这样就有可能产生一种印象,即表单/对话框的不同部分具有不同的外观