![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Гость_SID_M |
|
|||
|
Unregistered |
Смысл вот в чем...
пропарсил XML, для этого написал свою модель дерева. потом есть необходимось обойти созданное дерево. Проблема в том, что получить корень можно из модели. Дак вопрос в том как можно получить корень из готового дерева |
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 10 Всего: 118 |
JTree.getModel().getRoot()
|
|||
|
||||
| Hidrag |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 877 Регистрация: 9.4.2005 Где: JDK Репутация: 2 Всего: 25 |
И у меня вопрос по JTree, можно ли как нибудь отобразить только листья, без нодов, например шелкнул мышкой по кнопке отобразилось как дерево, щелкнул по другой - отобразилось как список? Или нужно наследовать и переопределять что нибудь?
-------------------- |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
Тут нужно делать 2 компонента: JList и JTree. Между ними гонять одну собственную модель. Ну и, соответственно, показывать на экране либо лист, либо дерево...
|
|||
|
||||
| Hidrag |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 877 Регистрация: 9.4.2005 Где: JDK Репутация: 2 Всего: 25 |
а я думал сделать так, чтобы все листья перенеслись в корень, вот только как их потом назад вернуть...
буду думать дальше ..или каждый раз динамически создавать дерево и выводить как надо. Хранить списки нодов и списки листьев в колекции, ввести индексирование, для определения принадлежности листа ноду... -------------------- |
|||
|
||||
| w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 23 Всего: 54 |
Объекты в дерево как попадают? Вот там, где они туда попадают, автоматически их же запихивать еще и в модель листа. А потом менять компоненты. Не надо и никаких своих моделей. Это сообщение отредактировал(а) w1nd - 1.2.2007, 17:18 -------------------- ![]() ![]() |
|||
|
||||
| Hidrag |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 877 Регистрация: 9.4.2005 Где: JDK Репутация: 2 Всего: 25 |
в общем задача такая: написать класс - дерево, с возможностью отображения без нодов,
то есть делаю в маин классе:
то есть я думал наследовать класс от jtree и переопределить в нем если нужно что нибудь, дополнить... а с подменой классов такой фокус не получится... там как я понимаю нужно будет метод писать который будет возвращать либо дерево либо список... впринципе задачу сам себе поставил, не получится так, буду продумывать с подменой как вы и советуете, и будут вопросы: как мне удалить с фрэйма дерево и воткнуть на его место список в рантайме -------------------- |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
||||
|
||||
| Hidrag |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 877 Регистрация: 9.4.2005 Где: JDK Репутация: 2 Всего: 25 |
а можно написать класс, реализовать в нем интерфейсы TreeModel и ListModel и использовать как общую модель для листа и дерева?
Это сообщение отредактировал(а) Hidrag - 2.2.2007, 16:41 -------------------- |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
Если вы считаете что это приведёт к необходимому результату, то конечно же можно. Но мне кажется дело не столько в модели, сколько в виде. Если у вас будет такая модель, что поддерживает 2 интерфейса (TreeModel и ListModel), то это неплохо, но главное чтобы вид умел эти модели отображать. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |