我做的这个是tree的可以自行增加、删除与修改节点的程序,在增加部分有个问题不明白~,大家看看关键代码部分:
public void addButton_actionPerformed(ActionEvent e) {
DefaultMutableTreeNode dmtn = new DefaultMutableTreeNode("新节点");
TreePath treePath = jTree1.getSelectionPath();
DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode)
treePath.getLastPathComponent();
treeNode.insertNodeInto(dmtn,treeNode.getChildCount());
jTree1.scrollPathToVisible(new TreePath(dmtn.getPath()));
}
为什么这样的新增加节点只可以是一个??就是说我按了按扭第一次可以增加,但第二次按就没反应了,而我改了用DefaultTreeModel来增加问题就解决了,为什么?看看下面代码:
public void addButton_actionPerformed(ActionEvent e) {
DefaultMutableTreeNode dmtn = new DefaultMutableTreeNode("新节点");
TreePath treePath = jTree1.getSelectionPath();
DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode)
treePath.getLastPathComponent();
///////dtm是我前面添加的DefaultTreeModel的实例
dtm.insertNodeInto(dmtn,treeNode,treeNode.getChildCount());
jTree1.scrollPathToVisible(new TreePath(dmtn.getPath()));
}
这样问题就解决了~~为什么一定要用model???不用可以吗??请高手说说Model的用处和说说为什么我第一个程序这样写不行,谢谢,再线等待~~
public void addButton_actionPerformed(ActionEvent e) {
DefaultMutableTreeNode dmtn = new DefaultMutableTreeNode("新节点");
TreePath treePath = jTree1.getSelectionPath();
DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode)
treePath.getLastPathComponent();
treeNode.insertNodeInto(dmtn,treeNode.getChildCount());
jTree1.scrollPathToVisible(new TreePath(dmtn.getPath()));
}
为什么这样的新增加节点只可以是一个??就是说我按了按扭第一次可以增加,但第二次按就没反应了,而我改了用DefaultTreeModel来增加问题就解决了,为什么?看看下面代码:
public void addButton_actionPerformed(ActionEvent e) {
DefaultMutableTreeNode dmtn = new DefaultMutableTreeNode("新节点");
TreePath treePath = jTree1.getSelectionPath();
DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode)
treePath.getLastPathComponent();
///////dtm是我前面添加的DefaultTreeModel的实例
dtm.insertNodeInto(dmtn,treeNode,treeNode.getChildCount());
jTree1.scrollPathToVisible(new TreePath(dmtn.getPath()));
}
这样问题就解决了~~为什么一定要用model???不用可以吗??请高手说说Model的用处和说说为什么我第一个程序这样写不行,谢谢,再线等待~~
解决方案 »
- appframework-1.0.3.jar 有人熟悉这个架包么
- jtable中表格第一列全部为checkbox(布尔型),删除时如何判断
- byte【】 转化 求好心人帮忙!!!
- 我想用b/s的网页来远程控制其它计算机,可以实时抓取和显示及远程控制其它计算机,b/s可以吗?
- 转型疑难问题?
- 关于JTable的小问题
- Eclipse 常用的快捷键有哪些呢
- 那位老大 有JDBC的4种驱动 给小的一份 谢谢谢谢谢谢!!!
- 一个跟sqlserver连接的问题阿~~~~~~~~~~~~~~~
- 小弟刚刚学习JAVA,请大家给我推荐什么值得学习的书,还有谁能和我共同学习~!给我指点迷津呢??
- 关闭模式对话框~在自己这个模式对话框,按确定按钮,把自己关闭?
- 静态初使化器的使用(static)请看下面的程序
DefaultMutableTreeNode dmtn = new DefaultMutableTreeNode("新节点");
TreePath treePath = jTree1.getSelectionPath();
DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode)
treePath.getLastPathComponent();
treeNode.insertNodeInto(dmtn,treeNode.getChildCount()); //在这里打断点看看
jTree1.scrollPathToVisible(new TreePath(dmtn.getPath()));
}