Java获取默认UI颜色

10

比如在 JList 中,我该如何找到默认的选择颜色?
这些颜色存储在哪里?

3个回答

15

对于 Swing 组件,您可以在应用程序范围内提供的 UIDefaults 中获取和设置默认颜色,该默认颜色由 UIManager 提供:

UIDefaults defaults = javax.swing.UIManager.getDefaults();
defaults.getColor("List.selectionBackground");
defaults.getColor("List.selectionForeground");

9

哈哈,这是你写的吗?这是一个非常棒的工具。 - davidahines
1
如果你只是想要一个变量名称列表,可以访问http://nadeausoftware.com/articles/2008/11/all_ui_defaults_names_common_java_look_and_feels_windows_mac_os_x_and_linux - Mgamerz

7
JList.getSelectionForeground();
JList.getSelectionBackground();

针对那个特定的框,通常会从 SystemColor.textHighlightSystemColor.textHighlightText 中读取颜色,这是在 UI 创建时完成的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接