The rendering part of the QTableView is optimized for that kind of data. After a quick look at your code, it seems you are generating lots of widgets to show your data, here you would only have one.