c++ QTableWidget 锁定一列,不让这列随着水平滚动条滚动
时间: 2023-07-19 08:39:50 浏览: 156
固定Table第一行或某几行不随滚动条滚动而滚动
5星 · 资源好评率100%
在 C++ 中,可以使用 `QHeaderView` 的 `setSectionResizeMode` 方法来实现锁定一列,不让这列随着水平滚动条滚动。
具体实现方法如下:
```cpp
// 获取要锁定的列号
int column_index = 1;
// 获取 QTableWidget 的水平头部视图
QHeaderView* header_view = ui->tableWidget->horizontalHeader();
// 设置列宽为固定大小
header_view->setSectionResizeMode(column_index, QHeaderView::Fixed);
// 获取要锁定的列的宽度
int column_width = ui->tableWidget->columnWidth(column_index);
// 设置锁定列的宽度
header_view->resizeSection(column_index, column_width);
// 禁止用户调整锁定列的宽度
header_view->setSectionResizeMode(column_index, QHeaderView::Fixed);
```
其中,`ui->tableWidget` 表示 `QTableWidget` 实例,可以根据实际情况进行替换。
阅读全文