TreeNode这个接口中有setUserObject(Object object).

解决方案 »

  1.   

    可是用TreeNode的setUserObject(Object object),显示出来的是该Object的字符串啊。
      

  2.   

    我以前也想过,可是没实现!
    呵呵!
    后来,我不得不,换成在jlist里了!
    你实现了,能告诉大家吗?
    呵呵!
      

  3.   

    http://www2.gol.com/users/tame/swing/examples/JTreeExamples2.html去这里看一下,有例子的
      

  4.   

    it's easy
    自己做TreeCellRender
    做之前最好别看例子,自己先把类之间的关系看看,试着自己做一下,问题不大,
    而且这样才有提高.
      

  5.   

    hehe, come here learning
      

  6.   

    我在公司,不能上qq,你发email给我好了,[email protected]谢谢。
      

  7.   

    我告诉你大体的框架
    class MyCheckBoxTree extends JCheckBox implements TreeCellRenderer {
        Border e = new EmptyBorder(1, 1, 1, 1);    public MyCheckBoxTree() {
            super();
            setOpaque(true);
            setBorder(e);
        }    public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
            setText(value.toString());
            //this.setBackground(selectesm a  d?tree.getSelectionPath():tree.getBackground());
            //this.setForeground(selected?tree.getForeground());
            setBackground(selected && !hasFocus ?
                    tree.getBackground() : tree.getBackground());
            setForeground(selected && !hasFocus ?
                    tree.getForeground(): tree.getForeground());
            if (value instanceof Boolean) {
                Boolean b = (Boolean) value;
                setSelected(b.booleanValue());
            }
            setFont(tree.getFont());
            setBorder(hasFocus ? UIManager.getBorder(
                    "Table.focusCellHighlightBorder") : e);
            //this.setFont(tree.getFont());
            return this;
        }}