Название: QSortFilterProxyModel::index() возращает невалидный индекс Отправлено: proton от Ноябрь 02, 2009, 09:12 Отнаследовал EventProxyModel от QSortFilterProxyModel, релиализовал функцию filterAcceptsRow():
Код: bool EventProxyModel::filterAcceptsRow (int source_row, const QModelIndex & source_parent) const Сначала все работает нормально, проблема в том, что когда строка уже скрыта, то index(source_row, 2, source_parent) возвращает пустой индекс. Где мой косяк? Название: Re: QSortFilterProxyModel::index() возращает невалидный индекс Отправлено: lit-uriy от Ноябрь 02, 2009, 10:24 ну модельный индекс запросто может быть недействительным (invalid), просто проверяй этот момент и всё
Код
Название: Re: QSortFilterProxyModel::index() возращает невалидный индекс Отправлено: proton от Ноябрь 10, 2009, 23:53 ну модельный индекс запросто может быть недействительным (invalid), просто проверяй этот момент и всё Ну естественно он недействителен, в этом, как раз и проблема, что когда строка скрыта индекс не действителен.Код
Название: Re: QSortFilterProxyModel::index() возращает невалидный индекс Отправлено: break от Ноябрь 11, 2009, 02:58 virtual QModelIndex mapFromSource ( const QModelIndex & sourceIndex ) const
virtual QModelIndex mapToSource ( const QModelIndex & proxyIndex ) const Здесь не помогут? - наверное source_row и source_paren - имеются ввиду исходные индексы относительно уже FilterProxyModel а не исходной модели в которой индексы этих строк все еще валидные... но может я и не прав... |