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


    1 表格列宽设置

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

    2 表头颜色

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

    QHeaderView::section {background-color:#E8F0F5;}

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

    3 选中行为

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

    4 行高列宽设置

    1. ui->tabGGA->resizeColumnsToContents(); // 这样设置后,表格不会遮盖过长的文字
    2. ui->tabGGA->resizeRowsToContents(); // 根据内容设置所有行高
    3. //需要设置每个单元格,注意,需要单元格填充了内容才可以设置
    4. ui->tableWidget->item(0,2)->setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
    5. /* 设置全部为空字符,然后设置居中格式 */

    5 表格宽高自适应缩放

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

    1. ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
    2. ui->tableWidget->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);

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

    1. for (auto i=0;i<4;i++)
    2. ui->tabMEAS->setItem(i,2,new QTableWidgetItem(QString::number(tag)));

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

    1. QTableWidgetItem *stag = new QTableWidgetItem(QString::number(tag));
    2. for (auto i=0;i<4;i++)
    3. ui->tabMEAS->setItem(i,2,stag);

  • 相关阅读:
    day17正则表达式作业
    队列-课前预习
    npm 执行命令时报错npm ERR! code ERESOLVE npm ERR! ERESOLVE could not resolve
    【PAT(甲级)】1058 A+B in Hogwarts
    H指数----题解报告
    Win10如何找回图片查看器
    Flutter 实现StackAllocator简化FFI局部变量的内存管理
    一文读懂自动泊车的自动化等级
    教程 - 深度探讨在 Vue3 中引入 CesiumJS 的最佳方式
    入门篇-其之八-常用类的简单使用
  • 原文地址:https://blog.csdn.net/u013516331/article/details/132866326