问题:在哪里可以获得 Swing 中存在的所有 UIDefaults 属性的列表?
我知道可以编写一小段代码来提取并显示它们,但我想知道通过这种方式获得的列表是否真的完整。
当我这样做时,我获得了 Metal L&F 的 636 个属性、Windows L&F 的 613 个属性以及 Motif 的 550 个属性。网上的另一个来源列出了 795 个条目的列表,尽管其中有一些不正确的附加条目。但也许即使是金属 L&F 也无法发挥其实际作用。
我很难相信真的不存在太阳可能具有的特性的官方列表。
并非所有属性都来自 Sun。例如,Mac OS 列出了 654 个属性 + 51 个特定于 apple.laf.AquaLookAndFeel 的属性。如果其他人想要提交结果,这里有一些代码:
import javax.swing.UIDefaults;
import javax.swing.UIManager;
public class CountUIDefaults {
public static void main(String[] args) throws Exception {
System.out.println(System.getProperty("os.name")
+ " " + System.getProperty("os.version")
+ " " + System.getProperty("java.version"));
UIManager.LookAndFeelInfo[] lfa =
UIManager.getInstalledLookAndFeels();
for (UIManager.LookAndFeelInfo lf : lfa) {
UIManager.setLookAndFeel(lf.getClassName());
UIDefaults uid = UIManager.getLookAndFeelDefaults();
System.out.println("***"
+ " " + lf.getName()
+ " " + lf.getClassName()
+ " " + uid.size() + " entries");
}
}
}
Mac OS X 10.5.8 1.6.0_17
*** Metal javax.swing.plaf.metal.MetalLookAndFeel 636 entries
*** Nimbus com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel 1052 entries
*** CDE/Motif com.sun.java.swing.plaf.motif.MotifLookAndFeel 550 entries
*** Mac OS X com.apple.laf.AquaLookAndFeel 705 entries
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)