我有一个树节点。我希望在查看树时在节点名称旁边显示图像。我怎么去?

有帮助吗?

解决方案

  1. 从您的图像中创建一个imageicon

    Imageicon图标= ....; ((有多种方法可以做到这一点)

  2. 创建一个defaulttreecellrenderer的实例

    defaultTreeCellRenderer Renderer = new DefaultTreeCellRenderer();

  3. 设置渲染器的叶子图标字段

    Renderer.setleaficon(图标);

  4. 设置树的渲染器

    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;



}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top