qt tablewidget表格合并单元格
时间: 2025-01-12 16:37:44 浏览: 42
如何在 Qt TableWidget 中实现单元格合并
在 QTableWidget
类中,可以使用 setSpan()
函数来合并单元格。此方法允许指定起始行、起始列以及要跨越的行数和列数。
下面是一个简单的例子展示如何创建并设置一个具有合并单元格的表格:
#include <QApplication>
#include <QTableWidget>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建一个3行3列的表格
QTableWidget tableWidget(3, 3);
// 设置水平方向上的表头标签
tableWidget.setHorizontalHeaderLabels(QStringList() << "A" << "B" << "C");
// 设置垂直方向上的表头标签
tableWidget.setVerticalHeaderLabels(QStringList() << "1" << "2" << "3");
// 合并第0行第0列到第0行第1列之间的两个单元格
tableWidget.setSpan(0, 0, 1, 2);
// 显示窗口部件
tableWidget.show();
return app.exec();
}
上述代码片段展示了如何通过调用 setSpan(row, column, row_span, column_span)
方法来定义跨多个行列的单一单元格[^2]。在这个例子中,第一行的第一个单元格被扩展至覆盖前两列的位置。
当需要更复杂的布局时,可以通过多次调用 setSpan()
来达到目的;需要注意的是,在设置了较大的跨度之后再尝试向这些位置添加新的项可能会失败或导致意外行为,因此建议先完成所有的 setItem()
或者其他类似的插入操作后再执行任何 setSpan()
调用。
相关推荐



















