使用Qt可以很方便地实现表格数据的显示,具体步骤如下:
- 创建一个QTableWidget对象,用于显示表格数据。
QTableWidget *table = new QTableWidget(parent);
- 设置表格的行数和列数。
table->setRowCount(rowCount); //设置行数
table->setColumnCount(columnCount); //设置列数
- 设置表头信息(可选)。
table->setHorizontalHeaderLabels(headerList); //设置水平表头
table->setVerticalHeaderLabels(headerList); //设置垂直表头
- 插入数据到表格中。
for(int row=0; row<rowCount; row++) {
for(int col=0; col<columnCount; col++) {
QTableWidgetItem *item = new QTableWidgetItem(data[row][col]);
table->setItem(row, col, item);
}
}
- 显示表格。
table->show();
完整代码示例:
#include <QApplication>
#include <QWidget>
#include <QTableWidget>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QWidget *window = new QWidget();
window->resize(400, 300);
QTableWidget *table = new QTableWidget(window);
table->setGeometry(10, 10, 380, 280);
int rowCount = 3;
int columnCount = 4;
QString headerList[] = {"姓名", "性别", "年龄", "城市"};
QStringList headers(headerList);
table->setRowCount(rowCount);
table->setColumnCount(columnCount);
table->setHorizontalHeaderLabels(headers);
QString data[][4] = {{"张三", "男", "20", "北京"},
{"李四", "女", "18", "上海"},
{"王五", "男", "22", "广州"}};
for(int row=0; row<rowCount; row++) {
for(int col=0; col<columnCount; col++) {
QTableWidgetItem *item = new QTableWidgetItem(data[row][col]);
table->setItem(row, col, item);
}
}
window->show();
return app.exec();
}
运行结果如下图所示:
参考文档: