Java JTree空指针加载第一行
我试图在创建JTree时选择它的第一行。 但有时我会遇到以下例外情况:Java JTree空指针加载第一行,java,swing,nullpointerexception,jtree,event-dispatch-thread,Java,Swing,Nullpointerexception,Jtree,Event Dispatch Thread,我试图在创建JTree时选择它的第一行。 但有时我会遇到以下例外情况: java.lang.NullPointerException at javax.swing.plaf.basic.BasicTreeUI.completeEditing(BasicTreeUI.java:2035) at javax.swing.plaf.basic.BasicTreeUI$Handler.valueChanged(BasicTreeUI.java:3715) at javax.swing.
java.lang.NullPointerException
at javax.swing.plaf.basic.BasicTreeUI.completeEditing(BasicTreeUI.java:2035)
at javax.swing.plaf.basic.BasicTreeUI$Handler.valueChanged(BasicTreeUI.java:3715)
at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:634)
at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1092)
at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:293)
at javax.swing.JTree.setSelectionPaths(JTree.java:1644)
at javax.swing.JTree.setSelectionRows(JTree.java:1721)
at javax.swing.JTree.setSelectionRow(JTree.java:1696)
在调用tree.setSelectionRow(0)之前,我尝试执行以下检查,但没有任何效果:
while((!tabTree.isVisible()) || (tabTree.isEditing()) || (tabTree.getRowCount() == 0)) {
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
tabTree.setSelectionRow(0);
您需要保存:)
有什么建议吗?这可能是由以下原因引起的:
- 您正在使用一个自定义单元格编辑器,它在
getTreeCellEditorComponent()中返回
null
- 您可以在非UI线程中修改树。看
- 您正在使用一个自定义单元格编辑器,它在
getTreeCellEditorComponent()中返回
null
- 您可以在非UI线程中修改树。看