Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Продолжение старого архива (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/)
-   -   при перезагрузке модели QTableView сбрасывает настройки интерфейса (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/pri-perezagruzke-modeli-qtableview-sbrasyvaet-nastrojki-interfejsa-358843/)

Guest 30.09.2011 21:13

при перезагрузке модели QTableView сбрасывает настройки интерфейса
 
Доброго времени суток.Ситуация такова: есть класс - поставщик данных CTovData хитрой структуры (инфа о более чем 20 000 товаров). на основе данных этого класса работает самописная табличная модель CTovTbModel (наследована от QAbstractTableModel). На эту модель вешается QSortFilterProxyModel , которая идет в QTableView. Во вьюхе юзверь может скрывать столбцы которые ему не нужны в данный момент (использую setColumnHidden(...) ). CTovTbModel часто перегружается полностью (оповещение об этом reset() ), скрытые столбцы при этот сотаются скрытыми. Все нормально работало в Qt4.3.4.Я перевел программку на Qt4.5.2, выскочил косяк - при пезагрузке CTovTbModel во вьюхе скрытые столбцы показываются, притом не при каждой перезагрузке (на 3-й, 5-й, закономерности не нашел).вместо reset() попытался использовать emit layoutChanged(); - не помогло.Выяснил, что "виновата" сортировка QSortFilterProxyModel: если не сортировать, косяка нет, отсортируешь по столбцу - проявляетсяКто-нить сталкивался или может будут мысли по этому поводу ?P.S. нужен код - выложу, просто много его.


Часовой пояс GMT, время: 03:41.


© www.otvetnemail.ru - Форум вопросов и ответов.