Я пытаюсь выбрать первую строку в JTree, когда я ее создаю. Но иногда я получаю следующее исключение:JTree nullpointer loading первая строка
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);
Вы должны быть сохранены :)
любые предложения?
Иногда? См. Также [* Начальные темы *] (http://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html). – trashgod
не то, что JTreeTable, для лучшей помощи, скорее, опубликуйте [SSCCE] (http://sscce.org/), короткий, выполнимый, компилируемый, только о JFrame, JTree и с жестко запрограммированным значением для JTree (как локальная переменная) – mKorbel