当数据改变时,调用你的TreeModel的fireTreeNodesChanged,fireTreeNodesInserted等等方法。

解决方案 »

  1.   

    如果也不调用TreeModel的方法,而是去扩展TreeModel有办法吗?
      

  2.   

    可以
    一般可以扩展DefaultTreeModel,
    将这个扩展的Model的实例设为Tree的model,在处理监听树的各种事件,都对model操作,然后model调用那几个fire方法
      

  3.   

    您好,关于
    http://expert.csdn.net/Expert/topic/1939/1939678.xml?temp=.1491205
    我还是不知道该怎样扩展model,能告诉我要在model中增加什么东西吗?
    我在用JMS作企业消息服务的东东,可是swing这部分不熟,请多指教啊我的msn;[email protected]
      

  4.   

    我觉得或许可以这样:
    创建一个自己的model类并继承DefaultTreeModel
      MyModel extends DefaultTreeModel{
        ....................
    然后在里面加上事件监听器的时候把所有的Listener的事件处理都调用
    fireTreeNodesChanged,fireTreeNodesInserted
    就是想这样处理
        this.addTreeModelListener( new TreeModelListener(){
           public void treeNodesChanged(TreeModelEvent e){
             this.fireTreeNodesChanged(.........
               ...................
           }
           public void ........
         .........
        });
    }目的就是在你自己定义的Model里面的数据更新时自动调用
    fire.........事件
      

  5.   

    我感觉还是不行的,因为JTree本身是MVC的结构的