Russian Qt Forum

Qt => Model-View (MV) => Тема начата: threetor от Декабрь 18, 2015, 00:03



Название: Группирование строк в QTableView
Отправлено: threetor от Декабрь 18, 2015, 00:03
Привет.
Есть необходимость выводить записи с базы данных, при этом группируя их по одному полю и созавая что-то вроде строки summary.
Например так
В таблице orders есть две записи. В таблице items есть три записи, у первых двух order_id=1, у третьей order_id=2.
NamePrice
Order one:400
Item 1100
Item 2300
Order two:200
Item 3200

QTreeView как я понимаю будет непродуктивно, так как в моём случае может быть много записей, плюс нужно сразу разворачивать всё дерево.
Есть способ сделать такое в таблице, или всё же придётся использовать дерево?


Название: Re: Группирование строк в QTableView
Отправлено: Racheengel от Декабрь 18, 2015, 01:09
Модель свою делать, видимо, придется. На основе исходных данных и нужного представления.


Название: Re: Группирование строк в QTableView
Отправлено: threetor от Декабрь 18, 2015, 10:20
Модель свою делать, видимо, придется. На основе исходных данных и нужного представления.
То есть создавать modelitem вручную и добавлять в model каждую запись? А если там будет под 500(может и больше) записей?


Название: Re: Группирование строк в QTableView
Отправлено: Racheengel от Декабрь 18, 2015, 11:11
Я имел в виду не QStandardItemModel, а собственную имплементацию на основе QAbstractTableModel.
Таким образом сможете показывать много тысяч записей.

Но 500 - это не проблема даже для стандартных моделей, я думал, у вас под миллион строк...


Название: Re: Группирование строк в QTableView
Отправлено: threetor от Декабрь 19, 2015, 23:38
Спасибо. Всё-таки значит воспользуюсь стандартными моделями. Вроде бы легко тянет такие нагрузки. Но потом переделаю по-человечески (да, я оптимист :)).
Спасибо за помощь!