我正在学习JTrees和Java的时候抛出异常。
建设性的意见和反馈都非常欢迎。
startEditingAtPath()将节点添加到一个JTree
我觉得我缺少JTrees的5小时后,谷歌搜索一些了解,并测试我被困。我尽可能简化了代码。
public void actionPerformed(ActionEvent event) {
MyNode selNode = (MyNode) m_tree.getLastSelectedPathComponent();
if (selNode != null) {
MyNode newNode = new MyNode("New Node");
model.insertNodeInto(newNode, selNode,
selNode.getChildCount());
MyNode[] nodes = model.getPathToRoot(newNode);
TreePath path = new TreePath(nodes);
m_tree.scrollPathToVisible(path);
m_tree.setSelectionPath(path);
// ******* The next line throws the exception shown below. ****
m_tree.startEditingAtPath(path);
}
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.plaf.basic.BasicTreeUI.startEditing(BasicTreeUI.java:2059)
at javax.swing.plaf.basic.BasicTreeUI.startEditingAtPath(BasicTreeUI.java:601)
at javax.swing.JTree.startEditingAtPath(JTree.java:2349)
at ItemCreator.ItemCreator$1.actionPerformed(ItemCreator.java:74)
Code - My Simple Mutable JTree
1)当添加新节点插入到JTree的代码抛出异常在线程 “AWT-EventQueue的-0” 显示java.lang.NullPointerException
2)任何一般建设性反馈非常欢迎。
亲切的问候
请在你的问题相关的(而不仅仅是链接)。欲了解更多信息,请参阅:http://codereview.stackexchange.com/faq#make-sure-you-include-your-code-in-your-question –
完成。如果我可以做任何事情,只要问。谢谢你的评论。 – nslntmnx
欢迎,@nslntmnx。请在[so]上发布您的问题,因为Code Review仅适用于工作代码,所以这里是无关紧要的。你的问题结构良好,所以我毫不怀疑你会在那里得到一个很好的答案。当您修正了自己的异常,可随时回到这里,编辑您的问题,以获取有关您的代码的结构的反馈。 – Adam