Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
poluna |
16.12.2015, 12:36
Сообщение
#11
|
|
Студент ![]() Группа: Участник Сообщений: 27 Регистрация: 5.10.2015 Пользователь №: 4458 Спасибо сказали: 1 раз(а) Репутация: 0
|
Теперь я поняла тебя.
Вариант неплох, и вроде как даже проще в реализации. Всё, вопрос пока снимаю. Знаю как реализовывать! |
|
|
|
|
lanz |
16.12.2015, 12:44
Сообщение
#12
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8
|
Цитата "внемодельное" дерево Ойойой, не слушайте его, он вас плохому научит! По идее модель в комбобоксе и модель в дереве слева - это должна быть одна и та же модель. Поэтому индекс от одного должен подходить к индексу от другого. Т.е. вы сначала получаете выделенный индекс от дерева (назовем его idx) потом в комбобоксе делаете Link Link |
|
|
|
|
Алексей1153 |
16.12.2015, 13:00
Сообщение
#13
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2946 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34
|
lanz, да можно и в модели хранить, но я так не люблю делать, это же неудобно ))
lanz, оно, вообще говоря, так и происходит - противоречий нету, но некоторые операции по своему контейнеру удобнее производить А в данном случае твой вариант лучше будет, конечно ) Сообщение отредактировал Алексей1153 - 16.12.2015, 13:08 |
|
|
|
|
ViGOur |
16.12.2015, 13:27
Сообщение
#14
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40
|
А по моему Алексей1153 предложил хороший способ, я сам подобным же пользуюсь.
Есть список (QList) или дерево(QMap), которое откуда-то загружается и которое отображается в модели. Очень удобно добавлять, редактировать, удалять. А модель это же абстракция и она не должна по идее хранить данные, как и вид. lanz, выше сказано Цитата(poluna @ 15.12.2015, 17:11) Link Есть у меня класс TreeComboBox, как можно понять из названия в QComboBox у меня находится QTreeView. и как я понимаю твой метод идеально подходит для QComboBox, но не для переопределенного класса. Дождемся автора, что она скажет! |
|
|
|
|
poluna |
16.12.2015, 13:34
Сообщение
#15
|
|
Студент ![]() Группа: Участник Сообщений: 27 Регистрация: 5.10.2015 Пользователь №: 4458 Спасибо сказали: 1 раз(а) Репутация: 0
|
lanz, если в комбобоксе стандартными средствами можно показать дерево, то твой метод подойдет, но я не смогла.
Как я поняла для показа дерева в комбобокс нужно переопределять класс, я сделала так: если я не права, то буду только рада, сразу куча проблем исчезнет! Но пока не знаю как! |
|
|
|
|
lanz |
16.12.2015, 14:53
Сообщение
#16
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8
|
poluna, ну у меня ваш код вроде работает как надо, ЧЯДНТ?
Немножко поменял hidePopup, чтобы он сразу все не корячил:
|
|
|
|
|
poluna |
16.12.2015, 16:06
Сообщение
#17
|
|
Студент ![]() Группа: Участник Сообщений: 27 Регистрация: 5.10.2015 Пользователь №: 4458 Спасибо сказали: 1 раз(а) Репутация: 0
|
Все, поняла, все работает!
Выкладываю работающий пример, так же на python: пример lanz, спасибо огромное! |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 6.12.2025, 1:05 |