说,我有3个面板添加到一个框架和第一个面板我想设置金属的外观和感觉,第二个面板我想窗口的外观和感觉,对于第三个面板它应该是默认的摆动样式。是否可以为同一帧内的不同面板设置不同的外观和感觉?
是否有可能?
说,我有3个面板添加到一个框架和第一个面板我想设置金属的外观和感觉,第二个面板我想窗口的外观和感觉,对于第三个面板它应该是默认的摆动样式。是否可以为同一帧内的不同面板设置不同的外观和感觉?
是否有可能?
不,这是不可能的。
javax.swing.UIManager
类,其中look and feel is set是一个单例。任何时候只能设置一个。但是,您可以(如果您倾向于)覆盖各个组件上的UI代理(请参阅JComponent.setUI())。使用这种方法,您可能会将一些使用UI代表的替代外观组合的组件拼凑在一起。但在大多数情况下,他们会查找由“真实”外观和感觉设置的UIDefaults
,所以最多它可能会是一个很差的近似值。
其实这是可能的,它现在发生在我身上。在我的GUI类中,我调用了
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel")
由于某些原因,容器面板仍然是Metal,而所有其他组件都是Nimbus。
如何在不同的类加载器中加载UIManager.setLookAndFeel?
这不行吗?
我猜如果它的工作,你需要桥接类加载器之间的数据。我认为谷歌写了这样一个桥梁。
你能详细说一下吗?任何参考? – 2010-04-26 11:55:16