图像与Java树节点对象的关联
题
我有一个树节点。我希望在查看树时在节点名称旁边显示图像。我怎么去?
解决方案
从您的图像中创建一个imageicon
Imageicon图标= ....; ((有多种方法可以做到这一点)
创建一个defaulttreecellrenderer的实例
defaultTreeCellRenderer Renderer = new DefaultTreeCellRenderer();
设置渲染器的叶子图标字段
Renderer.setleaficon(图标);
设置树的渲染器
tree.setcellrenderer(渲染器);
其他提示
您可以使用自定义叶片渲染器。覆盖getTreecellRendererComponent()方法。
当您渲染组件时。
使用面板,将文本放在首位,图标folliwng文本。
然后返回组件。
public Component getTreeCellRendererComponent(JTree tree, Object value,
boolean selected, boolean expanded, boolean leaf, int row,
boolean hasFocus) {
JLabel l = (JLabel)renderer.getTreeCellRendererComponent(
tree, "", true, expanded, leaf, row, true);
Component com = renderer.getTreeCellRendererComponent(
tree, "", true, expanded, leaf, row, true);
l.setIcon(YOUR_IMAGE);
l.setText(value.toString());
panel.removeAll();
panel.add(this, BorderLayout.EAST);
panel.add(j);
return panel;
}
不隶属于 StackOverflow