是否可以为同一框架内的不同面板设置不同的外观和感觉?

swi*_*ift 4 java swing

说,我有3个面板添加到一个框架和第一个面板我想设置金属外观和感觉,对于第二个面板我想要窗户的外观和感觉,对于第三个面板它应该是默认的摇摆风格.

可能吗?

Ash*_*Ash 5

设置外观javax.swing.UIManager类是单例.任何时候都只能设置一个.

但是,您可以(如果您愿意)覆盖单个组件上的UI委托(请参阅JComponent.setUI()).使用此方法,您可能会破坏使用备用外观的UI委托的一些组件.但在大多数情况下,他们会UIDefaults通过"真实"的外观和感觉来查看集合,所以充其量它可能是一个很差的近似值.