Название: QAbstractItemModel Отправлено: demaker от Август 29, 2013, 17:27 Возможно ли объекты различных классов, унаследованных от класса QObject,
запихнуть в одну модель, а затем отобразить в виде дерева. Т.е. Код
Код: objTop1 Название: Re: QAbstractItemModel Отправлено: mutineer от Август 29, 2013, 17:33 Возможно. ты сам выбираешь какие данные возвращать из модели и как их достать из объекта. Или кастомный делегат написать можно
Название: Re: QAbstractItemModel Отправлено: demaker от Сентябрь 02, 2013, 08:20 А можете хотя бы пример привести хоть какой-нибудь.
А то в экзамплах только пример с однотипными объектами. Название: Re: QAbstractItemModel Отправлено: Akon от Сентябрь 02, 2013, 18:41 Так у вас объекты в известном смысле тоже однотипные - все они QObject'ы :). Поэтому, можете пихать их в internalPointer индекса как QObject*, а дальше даункастить (qobject_cast, qdynamic_cast).
Название: Re: QAbstractItemModel Отправлено: demaker от Сентябрь 03, 2013, 13:44 дальше даункастить (qobject_cast, qdynamic_cast). Это как, я понимаю из какого-то класса QObject получить, но наоборот нельзя ведь Название: Re: QAbstractItemModel Отправлено: mutineer от Сентябрь 03, 2013, 14:09 дальше даункастить (qobject_cast, qdynamic_cast). Это как, я понимаю из какого-то класса QObject получить, но наоборот нельзя ведь Почему нельзя? можно, если объект на самом деле того типа, к которому пытаешься привести Название: Re: QAbstractItemModel Отправлено: kambala от Сентябрь 03, 2013, 14:10 можно. подобный трюк используется например для sender()'а.
Название: Re: QAbstractItemModel Отправлено: demaker от Сентябрь 03, 2013, 14:38 :-\ , хм ???
Вы уверены Название: Re: QAbstractItemModel Отправлено: Bepec от Сентябрь 03, 2013, 14:41 До. Если QObject каст вернёт не 0 - то это указатель на ваш класс, к которому преобразовывали :) Если 0 - это не его потомок.
Название: Re: QAbstractItemModel Отправлено: demaker от Сентябрь 03, 2013, 15:17 До. Если QObject каст вернёт не 0 - то это указатель на ваш класс, к которому преобразовывали :) Если 0 - это не его потомок. Классика :) |