Название: QSortFilterProxyModel и QModelIndex Отправлено: TheBlade от Январь 20, 2010, 15:58 Здравствуйте.
Я использую QSortFilterProxyModel для того что бы не показывать файлы, а только папки в QTreeView. Код:
переход в папку по сигналу connect(tView,SIGNAL(activated(QModelIndex)),lView,SLOT(setRootIndex(QModelIndex))); tView - QListView lView - QTreeView К сожалению это не сработало, так как индексы прокси и исходной модели не соответствуют друг другу. В связи с этим я решил переопределить слот setRootIndex(QModelIndex) и извлечь из переданного индекса индекс исходной модели. Код: void MyListView::setRootIndex(QModelIndex &index) Как это можно реализовать? И второй вопрос косметического характера: в QTreeView не отображаются файлы, но папки в которых они есть - с плюсиками. При нажатии на них плюсик пропадает. Как сделать так чтобы папки без подпапок сразу были без плюсика. Название: Re: QSortFilterProxyModel и QModelIndex Отправлено: Kolobok от Январь 20, 2010, 16:41 А зачем прокся?
Код: model->setFilter( QDir::AllDirs | QDir::NoDotAndDotDot ); Название: Re: QSortFilterProxyModel и QModelIndex Отправлено: crossly от Январь 20, 2010, 16:49 а не проще сделать слот.... в котором сначала узнать sourceIndex а потом вызвать setRootIndex
|