Qt中表格属性相关操作,调整表格宽度高度自适应内容等

1 表格列宽设置

利用Qt designer设计,可以通过改变表头的列宽从而保证内容不会被遮盖,输入空格的方式增加表头的长度,比如表头为"Value",则改成"Value ",可以扩展列默认的宽度,保证后面添加的数据不会遮盖了。

2 表头颜色

在样式表中设置,双击编辑表头内容时,属性可设置字体颜色,但是无法设置背景色,QTableWidget没有设置表头背景色的函数,通过Qss样式设置。但是这样就没法设置背景颜色。在setStyleSheet内容中设置

javascript 复制代码
QHeaderView::section {background-color:#E8F0F5;}

而且预览方式无法看见效果,需要运行整个工程文件,因为背景代码是在其他文件运行的。

3 选中行为

可以设置点击选中整行SelectRows ,也可以只选中当前单元格SelectItem ,选中整列SelectColumns。

4 行高列宽设置

javascript 复制代码
ui->tabGGA->resizeColumnsToContents(); // 这样设置后,表格不会遮盖过长的文字
ui->tabGGA->resizeRowsToContents();  // 根据内容设置所有行高

//需要设置每个单元格,注意,需要单元格填充了内容才可以设置
ui->tableWidget->item(0,2)->setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
/* 设置全部为空字符,然后设置居中格式 */

5 表格宽高自适应缩放

设置表格的宽度和高度与布局自适应调整,行列等宽高。

javascript 复制代码
ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
ui->tableWidget->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);

6 所有表格插入相同内容的方式

cpp 复制代码
for (auto i=0;i<4;i++)
    ui->tabMEAS->setItem(i,2,new QTableWidgetItem(QString::number(tag)));

如果改成循环如下,则会报错**-QTableWidget: cannot insert an item that is already owned by another QTableWidget-**

cpp 复制代码
QTableWidgetItem *stag = new QTableWidgetItem(QString::number(tag));
for (auto i=0;i<4;i++)
    ui->tabMEAS->setItem(i,2,stag);
相关推荐
泡海椒几秒前
JQuick-Excel 多字段 TRANSFORM:让当前行字段、JContext 与展示列各归其位
开发语言·python·excel
JPower_mr.g4 分钟前
SmartCall 音色管理技术解析:基于 SPI 的可扩展音色注册架构
java·开发语言·人工智能·ai·架构·开源
源图客18 分钟前
浏览器开发者工具使用
开发语言·php
Python图像识别34 分钟前
40-【2027毕设】YOLO11面部口罩检测识别系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·qt·课程设计
念何架构之路39 分钟前
go-grpc核心抽象接口
开发语言·后端·golang
kimnoic40 分钟前
Python操作Git命令的详细指南
开发语言·python
Python图像识别44 分钟前
39-【2027毕设】YOLO11行人摔倒检测系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·qt·课程设计
kimnoic1 小时前
Python数据库sqlite3图文实例详解
开发语言·python
老王爱玩车1 小时前
文件操作从打开到缓冲区
c语言·开发语言·学习
SunnyDays10112 小时前
Java 合并 PDF 文件:完整合并、指定页面合并与流合并
java·开发语言·合并pdf