Java Swing : A list of all UIDefaults properties

标签 java swing documentation

问题:从哪里可以获得 Swing 中存在的所有 UIDefaults 属性的列表?

我知道可以编写一小段代码来提取和显示它们,但我想知道我通过这种方式获得的列表是否真的完整。 当我这样做时,我获得了 636 个 Metal L&F 属性、613 个 Windows L&F 属性和 550 个 Motif 属性。网络上的另一个来源列出了 795 个条目,尽管它有一些不正确的附加条目。但也许即使是金属 l&f 也无法设置它实际上可以设置的所有位置。

我很难相信真的不存在来自 sun 的可能属性的官方列表。

最佳答案

并非所有属性都来自 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

关于Java Swing : A list of all UIDefaults properties,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2085271/

相关文章:

java - JLabel 不在全屏居中

documentation - 如何生成 rdoc 风格的可折叠代码段?

java - 你如何让java读取并计算句子输入的数量

java - 将多个 Controller 替换为一个 Controller (JavaFX)

java - 如何在java的Swing GUI中将图像设置为Frame的背景?

java - 新的按钮窗口和 UI 对齐

jsf-2 - 在哪里可以找到 primefaces 标签库文档?

documentation - F# Powerpack 文档

java - foursquare 多请求收到 400 错误请求

java - Spring/JPA 数据在单元测试中持续存在,但在应用程序中不存在