Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Прочитать данные из узла JTree / 3 сообщений из 3, страница 1 из 1
20.04.2007, 12:12:18
    #34475559
Юра Wolf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прочитать данные из узла JTree
Доброго времени суток

В узлы дерева записываю данные из БД следующим образом

while (rs.next()){
MyTreeNode myTreeNode = new MyTreeNode();
myTreeNode.Id = rs.getInt("filed1");
myTreeNode.Name = rs.getString("filed2");
DefaultMutableTreeNode tmpTN = new DefaultMutableTreeNode(myTreeNode);
AddTreeNodeRecurse(tmpTN, rs.getInt("field1"));
root.add(tmpTN);
где rs - ResultSet с выборкой
myTreeNode - объект класса с двумя полями

теперь когда я нахожусь на узле - мне надо обратиться к моему классу - получить его данные
пробывал так

TreePath tp = tree.getPathForLocation(me.getX(), me.getY());
if (tp != null){
System.out.println(((MyTreeNode)tp.getLastPathComponent()).Id);
}

выдает ошибку что не может сделать приведение
подскажите пожалуйста как правильно вытаскивать значение из узла
...
Рейтинг: 0 / 0
20.04.2007, 12:35:13
    #34475643
Illyge
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прочитать данные из узла JTree
Юра WolfДоброго времени суток

В узлы дерева записываю данные из БД следующим образом

while (rs.next()){
MyTreeNode myTreeNode = new MyTreeNode();
myTreeNode.Id = rs.getInt("filed1");
myTreeNode.Name = rs.getString("filed2");
DefaultMutableTreeNode tmpTN = new DefaultMutableTreeNode(myTreeNode);
AddTreeNodeRecurse(tmpTN, rs.getInt("field1"));
root.add(tmpTN);
где rs - ResultSet с выборкой
myTreeNode - объект класса с двумя полями

теперь когда я нахожусь на узле - мне надо обратиться к моему классу - получить его данные
пробывал так

TreePath tp = tree.getPathForLocation(me.getX(), me.getY());
if (tp != null){
System.out.println(((MyTreeNode)tp.getLastPathComponent()).Id);
}

выдает ошибку что не может сделать приведение
подскажите пожалуйста как правильно вытаскивать значение из узла

Конечно, не может. У тебя getLastPathComponent() возвращает DefaultMutableTreeNode. Чтобы получить твой MyTreeNode ты должен добавить .getUserObject. Примерно так:
System.out.println(((MyTreeNode)((DefaultMutableTreeNode)tp.getLastPathComponent()).getUserObject()).Id)
...
Рейтинг: 0 / 0
20.04.2007, 13:22:27
    #34475843
Юра Wolf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прочитать данные из узла JTree
[quote]
Конечно, не может. У тебя getLastPathComponent() возвращает DefaultMutableTreeNode. Чтобы получить твой MyTreeNode ты должен добавить .getUserObject. Примерно так:
System.out.println(((MyTreeNode)((DefaultMutableTreeNode)tp.getLastPathComponent()).getUserObject()).Id)

[/quote]

Спасибо большое
чего-то я тормозил думал он Object возвращает :)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Прочитать данные из узла JTree / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]