![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
tp4 |
![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 32 Регистрация: 1.10.2009 Пользователь №: 1128 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
Здравствуйте, господа!
Имеется кастомная иерархическая модель, унаследованная от QAbstractModelItem. Написана своя прокси модель. Наследовался от QSortFilterProxyModel'и (переопределил методы: data, setData, headerData, mapToSource, mapFromSource, hasChildren, rowCount). Помимо функциональности QSortFilterProxyModel она также умеет выкидывает некоторые столбцы, а также меняет местами оставшиеся. Все работает, если нулевой столбец из исходной модели соответствует нулевому столбцу в прокси-модели. Если же прокси-модель перемещает этот столбец, то отображение некорректно: Стрелочки (или крестики) рисуются правильно - напротив тех элементов, у которых есть потомки. Но при попытке раскрыть такой элемент оказывается, что внутри нет элементов. Вот некоторые методы прокси-модели:
Причем MySortFilterProxyModel::rowCount возвращает правильное количество столбцов. Но также замечен вызов метода rowCount исходной модели, минуя вызов MySortFilterProxyModel::rowCount. Это происходит при вызове QSortFilterProxyModel::index(). Может быть проблема связана с этим? Буду рад вашей помощи. Спасибо. |
|
|
![]() |
tp4 |
![]()
Сообщение
#2
|
Студент ![]() Группа: Участник Сообщений: 32 Регистрация: 1.10.2009 Пользователь №: 1128 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
Попробую задать вопрос более обшего характера в рамках этого треда.
Как правильно написать свою прокси-модель, которая будет удалять и менять местами столбцы из иерархической модели, унаследованной от QAbstractItemModel? |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 18.2.2025, 21:17 |