我正在尝试实施FP-Tree
。所以我使用了JTree
。我已经成功创建了我的树。但是我需要为我的节点添加两个自定义属性,'Label'和'LabelCount'
我还需要在树上打印它。这可能吗?
答案 0 :(得分:1)
使用DefaultMutableTreeNode作为节点并向其添加用户对象,而不是将自己的TreeCellRenderer实现添加到树中(setTreecellRenderer(...)
在TreeCellRenderer中实现getTreeCellRendererComponent方法。
Component getTreeCellRendererComponent(JTree tree,
Object value,
boolean selected,
boolean expanded,
boolean leaf,
int row,
boolean hasFocus)
Object值参数将是包含用户对象的DefaultMutableTreeNode。
您只需返回包含所需文本的JLabel(或任何其他组件)。
出于性能原因,您可以重用JLabel,每次调用该方法时都不需要创建新的JLabel。