Tengo una tabla con 3000 filas y 8 columnas. Yo uso QTableView. para insertar elementos que hacen:QTableView es extremadamente lento (incluso para solo 3000 filas)
QStandardItem* vSItem = new QStandardItem();
vSItem->setText("Blabla");
mModel->setItem(row, column, vSItem);
donde mmodel es QStandardItemModel. Todo está bien si no tengo muchas filas, pero cuando intento visualizar datos grandes (aproximadamente 3000 filas), entonces es extremadamente lento (20 segundos en Win 7 de 64 bits (máquina de 8 núcleos con 8 GB de ¡¡¡RAM!!!)). ¿Hay algo que pueda hacer para mejorar el rendimiento?
Gracias de antemano.
explícitamente. A menos que esto se haga de manera predeterminada, no lo tengo. – Tom
Lo que tengo es: mUi.mImagesTableView-> setAlternatingRowColors (true); mUi.mImagesTableView-> setSelectionMode (QAbstractItemView :: SingleSelection); mUi.mImagesTableView-> setSelectionBehavior (QAbstractItemView :: SelectRows); mUi.mImagesTableView-> setEditTriggers (QAbstractItemView :: NoEditTriggers); mUi.mImagesTableView-> setIconSize (QSize (vIconSize, vIconSize)); mUi.mImagesTableView-> setColumnWidth (0, vIconPlusBorder); mUi.mImagesTableView-> horizontalHeader() -> setStretchLastSection (true); – Tom
intente y deshabilite setStretchLastSection, deshabilite el cambio de tamaño automático (no recuerdo si se hace de forma predeterminada) ... En otras palabras, intente y deshabilite todo lo que pueda estar relacionado con el cambio de tamaño de filas y columnas ... En mi aplicación, en versión, tengo una vista en árbol (con columnas) con más de 10 mil elementos y puedo cambiar el tamaño de todo sin problemas ... Pero si enciendo esas características de cambio de tamaño automático, ¡mis impresiones se malogran! –