хотел би их положить в jtree. но так что би одно поле било видимим а осталние нет.
1)есть ли вообше такая возмогность в jtree.
2)могно ли при клике мишкои на какои либо елемент jtree получать не толко етот елемент а всю структуру , включая скритие поля.
спасибо.
Здравствуйте, Аноним, Вы писали:
А>привет. А>у меня есть набор структур информазии:
А>id А>name А>lastname
А>хотел би их положить в jtree. но так что би одно поле било видимим а осталние нет. А>1)есть ли вообше такая возмогность в jtree. А>2)могно ли при клике мишкои на какои либо елемент jtree получать не толко етот елемент а всю структуру , включая скритие поля.
JTree хранит данные в модели: TreeModel.
Можно написать свою имплементацию.
DefaultTreeModel это имлементация по умолчанию. Она оперирует с MutableTreeNode в качестве узлов дерева.
Можно написать своё имплементацию MutableTreeNode.
DefaultMutableTreeNode это готовая имплементация MutableTreeNode.
Можно сделать свой класс:
class MyTreeNode extends DefaultMutableTreeNode {}
Кроме этого DefaultMutableTreeNode имеет свойство userObject, который может содержать любую информацию.
Здравствуйте, Аноним, Вы писали:
А>привет. А>у меня есть набор структур информазии:
А>id А>name А>lastname
А>хотел би их положить в jtree. но так что би одно поле било видимим а осталние нет. А>1)есть ли вообше такая возмогность в jtree. А>2)могно ли при клике мишкои на какои либо елемент jtree получать не толко етот елемент а всю структуру , включая скритие поля. А>спасибо.
Напиши класс-потомок следующего типа:
public class JTreeOborud extends DefaultMutableTreeNode implements TreeNode
а в нем задай нужные тебе поля и дополнительные методы для работы со скрытыми полями.
Например, мой конструктор этого класса был таким:
public JTreeOborud(String title, int t, int k) {
super(title);
ElType=t;
ElKod=k;
......
}
Здравствуйте, Аноним, Вы писали:
А>привет. А>у меня есть набор структур информазии:
А>id А>name А>lastname
А>хотел би их положить в jtree. но так что би одно поле било видимим а осталние нет. А>1)есть ли вообше такая возмогность в jtree. А>2)могно ли при клике мишкои на какои либо елемент jtree получать не толко етот елемент а всю структуру , включая скритие поля. А>спасибо.
Воспользуйся классом DefaultMutableTreeNode. У него есть конструктор, в который пихаешь свой обьект. Единственное что твой обьект должен в методе toString() возвращать видимое поле. getUserObject() класса DefaultMutableTreeNode возвратит тебе твой обьект.
Вобщем смотри http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html, там должно все быть.
Здравствуйте, Halyva, Вы писали:
B>>Кроме этого DefaultMutableTreeNode имеет свойство userObject, который может содержать любую информацию.
H>Вот чё то тока я не понял, а как теперь этот userObject выдернуть то? К чему метод getUserObject применять?
Что значит "к чему применить метод"? Может "у какого объекта вызвать метод"?
Нужно получить TreeNode у модели дерева. Потом прикастить к DefaultMutableTreeNode, а потом вызвать этот меотд.