qt QTableWidget 提升 不显示内容 点击才显示
时间: 2023-11-13 09:03:24 浏览: 152
QTableWidget只在表格需要在屏幕上显示的那些行填充数据,不显示的不填充数据,表格行数是数据的行数
这种情况一般是由于 QTableWidget 的数据加载方式导致的。默认情况下,QTableWidget 在创建时不会立即显示数据,而是在调用 `show()` 或 `setVisible(true)` 方法时才会加载并显示数据。
如果您想在 QTableWidget 创建时立即显示数据,可以在构造函数中调用 `setRowCount()` 和 `setColumnCount()` 方法设置表格的行数和列数,然后使用 `setItem()` 方法设置每个单元格的数据。例如:
```cpp
QTableWidget *tableWidget = new QTableWidget(this);
tableWidget->setRowCount(2);
tableWidget->setColumnCount(2);
tableWidget->setItem(0, 0, new QTableWidgetItem("A"));
tableWidget->setItem(0, 1, new QTableWidgetItem("B"));
tableWidget->setItem(1, 0, new QTableWidgetItem("C"));
tableWidget->setItem(1, 1, new QTableWidgetItem("D"));
```
如果您的数据是从数据库或其他数据源加载的,则可以在加载数据后手动调用 `show()` 或 `setVisible(true)` 方法。
另外,如果您的表格数据比较大,加载时间比较长,可以考虑使用 QTableView + QSqlTableModel 的方式进行数据加载和显示,这样可以提高表格的性能和响应速度。
阅读全文