没有硬编码值的外观
Look and Feel without hard coded values
现在我是这样设置 LaF 的:UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
它工作正常并且提供了我想要的外观和感觉。不幸的是,在我的代码中的某些时候,我必须手动设置一些图标,因为这些图标的自动设置不能正常工作(设置错误的图标)。我目前有:
if (node.getAllowsChildren()) {
setIcon(UIManager.getIcon("FileView.directoryIcon"));
}else {
setIcon(UIManager.getIcon("FileView.fileIcon"));
}
但它不使用 LaF 图标,我不知道如何找到看起来像 LaF 的图标。所以我的问题是,有没有一种简单的方法可以让我们说 LaF 文件夹图标?
我目前得到的设计:
以及我想要的设计:
尝试使用 UIDefaults
class 获取值:
UIDefaults defaults = UIManager.getLookAndFeelDefaults();
Icon icon = (Icon)defaults.get(...);
查看 UIManager Defaults。此图标随 LAF 更改而更改。
现在我是这样设置 LaF 的:UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
它工作正常并且提供了我想要的外观和感觉。不幸的是,在我的代码中的某些时候,我必须手动设置一些图标,因为这些图标的自动设置不能正常工作(设置错误的图标)。我目前有:
if (node.getAllowsChildren()) {
setIcon(UIManager.getIcon("FileView.directoryIcon"));
}else {
setIcon(UIManager.getIcon("FileView.fileIcon"));
}
但它不使用 LaF 图标,我不知道如何找到看起来像 LaF 的图标。所以我的问题是,有没有一种简单的方法可以让我们说 LaF 文件夹图标?
我目前得到的设计:
以及我想要的设计:
尝试使用 UIDefaults
class 获取值:
UIDefaults defaults = UIManager.getLookAndFeelDefaults();
Icon icon = (Icon)defaults.get(...);
查看 UIManager Defaults。此图标随 LAF 更改而更改。