首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在TreeCellRenderer中设置工具提示?

如何在TreeCellRenderer中设置工具提示?
EN

Stack Overflow用户
提问于 2014-06-03 11:35:35
回答 1查看 805关注 0票数 3

我只能将工具提示设置为添加到JPanel节点的JTree中的一个。这个问题可能类似于JTree节点的可更改工具提示,但并不完全相同。

我还使用了一些(自定义)节点填充的JTree。每个节点包含一个复选框、一个颜色框(JPanel)和节点路径。我正在实现TreeCellRenderer。我还没有在下面的代码中发布正在添加到节点中的内容,因为我认为没有必要。

下面是我代码的一部分:

代码语言:javascript
复制
    public class CheckTreeCellRenderer extends JPanel implements TreeCellRenderer {

        private static final long serialVersionUID = 4025435851260573240L;

        CheckTreeSelectionModel selectionModel; 
        private TreeCellRenderer delegate; 
        TristateCheckBox checkBox = new TristateCheckBox();
        JPanel panel = new JPanel();

        public CheckTreeCellRenderer(TreeCellRenderer delegate, CheckTreeSelectionModel selectionModel){
            this.delegate = delegate;
            this.selectionModel = selectionModel;

            setLayout(new BorderLayout()); 
            setOpaque(false); 
            checkBox.setOpaque(false);
        }

        public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus){
            Component renderer = delegate.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus);
            panel.setToolTipText("Hello");
            removeAll();
        add(checkBox, BorderLayout.WEST);
        add(panel, BorderLayout.CENTER);
        add(renderer, BorderLayout.EAST);

        return this;
    }
}

如何为添加到节点的JPanel设置工具提示?

EN

回答 1

Stack Overflow用户

发布于 2014-06-03 12:10:56

看看JTree.getToolTipText的文档

注意:要使JTree正确地显示其呈现器的工具提示,JTree必须是已注册的带有ToolTipManager的组件。这可以通过调用ToolTipManager.sharedInstance().registerComponent(tree).来完成。这不是自动完成的!

这会解决问题的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24014156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档