Название: Как в QAbstractItemModel узнать QModelIndex корневого элемента? Отправлено: xintrea от Октябрь 25, 2010, 00:50 Здравствуйте!
Потребовалось мне тут выяснить QModelIndex корневого элемента для класса, унаследованного от QAbstractItemModel. Нужно это для того, чтобы рекурсивно пробежаться по QModelIndex-веткам этой модели. Вопрос. Как обратиться к корневому элементу класса QAbstractItemModel? Название: Re: Как в QAbstractItemModel узнать QModelIndex корневого элемента? Отправлено: Sergey B. от Октябрь 25, 2010, 00:59 http://doc.trolltech.com/4.7/qabstractitemmodel.html#parent
Если он невалидный, значит текущий индекс = корневой. Название: Re: Как в QAbstractItemModel узнать QModelIndex корневого элемента? Отправлено: xintrea от Октябрь 25, 2010, 13:03 http://doc.trolltech.com/4.7/qabstractitemmodel.html#parent Если он невалидный, значит текущий индекс = корневой. Вы предлагаете метод, который требует наличия некого QModelIndex, у которого предлагаете проверить parent. Если parent невалидный, то рассматриваемый QModelIndex - корневой. Вопрос в том, как получить этот некий QModelIndex? Название: Re: Как в QAbstractItemModel узнать QModelIndex корневого элемента? Отправлено: GreatSnake от Октябрь 25, 2010, 14:02 Можно отнаследоваться от QStandardItemModel и получить root index через QStandardItemModel::invisibleRootItem()->index().
Насколько я понял, QAbstractItemModel не имеет root index-а. Название: Re: Как в QAbstractItemModel узнать QModelIndex корневого элемента? Отправлено: Kolobok от Октябрь 25, 2010, 14:09 Код: for( int row = 0; row < model->rowCount() - 1; ++row ) Название: Re: Как в QAbstractItemModel узнать QModelIndex корневого элемента? Отправлено: lit-uriy от Октябрь 25, 2010, 15:57 xintrea, уточняй вопрос. т.к. первый ответ, на мой взгляд, полностью корректный и не требует никакого дополнительного индекса.
|