我有一个自定义树单元格渲染器,我用它来渲染自定义图标 JTree,我真的很喜欢 JOptionPane 分别为警告消息和错误消息显示的警告图标和错误图标。显然,我可以使用下面的代码来获取我自己使用的图标,但这很繁琐,需要我实例化我永远不会使用的对话框:
public class ValidationCellRenderer extends DefaultTreeCellRenderer {
private Icon warnIcon;
private Icon errorIcon;
public ValidationCellRenderer() {
JOptionPane optionPane = new JOptionPane(new Object(),
JOptionPane.WARNING_MESSAGE);
warnIcon = optionPane.getIcon();
optionPane = new JOptionPane(new Object(),
JOptionPane.ERROR_MESSAGE);
errorIcon = optionPane.getIcon();
}
}
必须有更好的方法来获取这些图标作为资源,但我没有从 Java API 中找到一种简单的方法来做到这一点。有人有什么建议吗?