将不同的图标分配给JTree中的不同节点

时间:2011-08-27 16:39:38

标签: java swing jtree

是否可以使用JTreeDefaultTreeCellRenderer.setOpenIcon()中的不同节点分配不同的图标?感谢。

1 个答案:

答案 0 :(得分:5)

相同的单元格渲染器实例用于渲染树的所有单元格。打开图标是每个树节点左侧的小+符号或三角符号,允许扩展它(即查看其子节点)。我怀疑这是你要改变的图标。如果不对所有节点使用相同的节点,那将是相当奇怪的。

如果要显示特定节点的自定义图标,请创建DefaultTreeCellRenderer的子类,覆盖getTreeCellRendererComponent方法,根据传递给方法的值确定要显示的图标,然后调用{{1 }}。

请参阅http://download.oracle.com/javase/tutorial/uiswing/components/tree.html#display获取类似示例(自定义工具提示,而不是图标,但想法相同)。