You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在QTableWidget表格最后一行之后添加按钮?

在QTableWidget最后一行后添加按钮的实现方法

方案一:表格外部下方添加按钮(最常用)

直接借助Qt的布局系统,把表格和按钮放在同一个垂直布局里,按钮会自动排在表格底部,窗口大小变化时也能自动适配。

代码示例:

// 保留你的表格初始化代码
QTableWidget *t = new QTableWidget(this);
t->setColumnCount(4);
t->setShowGrid(true);
t->setSelectionMode(QAbstractItemView::SingleSelection);
t->setSelectionBehavior(QAbstractItemView::SelectRows);
t->setHorizontalHeaderLabels({"1", "2", "3", "4"});
t->setWordWrap(true);
t->verticalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
t->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);

// 创建按钮
QPushButton *addBtn = new QPushButton("新增数据", this);

// 创建垂直布局并添加控件
QVBoxLayout *layout = new QVBoxLayout(this);
layout->addWidget(t);
layout->addWidget(addBtn);

// 给窗口设置主布局
this->setLayout(layout);

方案二:表格内部最后一行嵌入按钮

如果需要把按钮作为表格的一行内容(比如操作行),可以插入新行并将按钮设置为单元格控件:

代码示例:

// 保留你的表格初始化代码
QTableWidget *t = new QTableWidget(this);
// ... 你的初始化代码 ...

// 插入新行作为表格最后一行
int lastRow = t->rowCount();
t->insertRow(lastRow);

// 创建按钮
QPushButton *btn = new QPushButton("操作按钮", t);

// 将按钮放到最后一行的第0列
t->setCellWidget(lastRow, 0, btn);

// 可选:让按钮跨所有列显示(占满整行)
t->setSpan(lastRow, 0, 1, t->columnCount());

内容的提问来源于stack exchange,提问作者volnistii

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 15:40:27