How to insert many items into QListView without making the app freeze?
-
With a subclass of the QAbstractXXXModels you can connect the webservice to the model directly. In that processing method you tell the model that you are going to change its contents, then you do the actual changes, then you tell the model that you're ready. This cannot be done from outside the model, as you would have to do with the QStandardXXXModels.
But I read back and noticed, that you use setIndexWidget(). This isn't handled by the models at all, but only by the view. So you cannot speed up things by using another model class here.
-
Ah, I missed the use of that method as well. Sorry.
All bets are off. It is a wart on the face of the model view framework, and it makes sure the whole thing is basically useless. Putting more and more widgets on your view is never, ever going to be fast. Sorry. -
what if i set up like 100 widget items in the Init , when i start the app
and set them to be hidden , and when i get the info to fill them i just show the right widget items? ( i need only like 100 or 150 to be present in view) -
In your case, I would consider using a [[Doc:QScrollArea]] with a [[Doc:QVBoxLayout]], as that is more or less visibly the same as a list view consisting only of widgets.
-
Do you really, really need to have actual widgets?
-
what is wrong with me inserting the widgets into the Treeview?
using QScrollArea will be faster? -
Andre , i asked this and other forums before but i could find solutions to
things like making label with mouse select text for copy when i tried to use
itemdelegate"developer.qt.nokia.com/forums/viewthread/13515/":developer.qt.nokia.com/forums/viewthread/13515/
-
I would go with a scroll area here, instead of a list view.
-
thanks , but why?
-
Because the item views are a bit imperformant when using many item widgets. That's not the main usage they were designed for.