Здравствуйте, гость ( Вход | Регистрация )
|
Delphist |
8.8.2008, 12:26
Сообщение
#1
|
|
Студент ![]() Группа: Новичок Сообщений: 41 Регистрация: 4.8.2008 Из: Россия Пользователь №: 249 Спасибо сказали: 0 раз(а) Репутация: 0
|
У меня есть класс который имеет ряд свойств и содержит внутри себя QHash с объектами того же типа в итоге получается иерархический класс:
Для отображения я использую TreeView и соответственно собственную модель данных наследованную от QAbstractItemModel. Вопрос такой дело в том что когда у моего объекта меняется свойство например m_sName, то для всех m_Listeners генерится OnValueChanged. И нужно чтобы эти изменения сразу отображались в TreeView, вопрос как заставить обновляться не все дерево, только отдельный элемент. Конечно можно было сделать так, но это не очень эффективно: /*прототип*/
Причина редактирования: для кода используйте тег code=cpp
|
|
|
|
![]() |
|
Tonal |
10.8.2008, 14:05
Сообщение
#2
|
![]() Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17
|
Цитата(Delphist @ 8.8.2008, 16:26) Link ...вопрос как заставить обновляться не все дерево, а только отдельный элемент. Послать OnValueChanged модельке, которая преобразует const СMyClass & в QModelIndex и сгенерирует сигнал dataChanged. Нет? Кстати, а зачем ты дублируешь Qt-шную систему сигнал/слот с помощью QLinkedList<ListenerSlot>? Сигнал/слот вполне хорошо с этим справляется. |
|
|
|
Delphist TreeView и модель на базе QAbstractItemModel, как заставить обновляться только определенный node 8.8.2008, 12:26
Litkevich Yuriy что-то я не понял при чем здесь CMyClass, речь вро... 8.8.2008, 13:31
Delphist Цитата(Litkevich Yuriy @ 8.8.2008, 13:31)... 8.8.2008, 13:38
Litkevich Yuriy Дерево и модель взаимодействуют автоматически, и д... 8.8.2008, 15:06
void* и кстати нет смысла писать явно inline, т.к. по ум... 8.8.2008, 21:21
niXman Цитата(void* @ 8.8.2008, 22:21) и кстати ... 8.8.2008, 22:05
Delphist Цитата(Tonal @ 10.8.2008, 14:05) Кстати, ... 11.8.2008, 8:52
Tonal Я имею в виду, что можно просто объявить OnValueCh... 11.8.2008, 10:40![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 12.2.2026, 3:16 |