码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • QTableWidget 设置列宽行高大小的几种方式及其他常用属性设置


    目录

    效果:

    1.列宽、行高自动分配

    2.固定值

    3.随内容分配列宽 随内容分配行高

    4.水平方向标签拓展剩下的窗口部分,填满表格

    5.列宽是自动分配的,但是第一列可手动调整宽度,而表格整体的列宽仍是自动分配的。第二、三列办法调整列宽,自动分配的

    6.手动 自定义列宽

    7. 其实也可以设置宽度比例

    8. QTableWidgetItem QLable 字符过长 省略显示

    9.隐藏 默认显示行头

    10.设置选中时为整行选中       

    12. 显示QTableWidget组件中的线

    13.去除选中虚线框

    14.设置非单元滚动

    15.隔行交替背景色

    16.QTableWidget类中的常用方法

    17.编辑规则的枚举值类型

    18.表格选择行为的枚举值

    19.单元格文本水平对齐方式

    20. 单元格文本垂直对齐方式

    注意:



    效果:

    1.列宽、行高自动分配

    1. //列宽自动分配
    2. tableWidget.horizontalHeader().sectionResizeMode(QHeaderView::Stretch)
    3. //行高自动分配
    4. tableWidget.verticalHeader().SectionResizeMode(QHeaderView::Stretch)

    2.固定值

    tableWidget.horizontalHeader().SectionResizeMode(QHeaderView::Fixed)

    3.随内容分配列宽 随内容分配行高

    1. tableWidget.verticalHeader().SectionResizeMode(QHeaderView::Stretch)
    2. tableWidget.verticalHeader().SectionResizeMode(0, QHeaderView::ResizeToContents)
    3. tableWidget.verticalHeader().SectionResizeMode(QHeaderView::Stretch)
    4. tableWidget.verticalHeader().SectionResizeMode(0, QHeaderView::ResizeToContents)

    4.水平方向标签拓展剩下的窗口部分,填满表格

    tableWidget.horizontalHeader().setStretchLastSection(true)

    5.列宽是自动分配的,但是第一列可手动调整宽度,而表格整体的列宽仍是自动分配的。第二、三列办法调整列宽,自动分配的

    1. tableWidget.horizontalHeader().SectionResizeMode(QHeaderView::Stretch)
    2. tableWidget.horizontalHeader().SectionResizeMode(0, QHeaderView::Interactive)

    6.手动 自定义列宽

    1. tableWidget->setColumnWidth(0, 200);
    2. tableWidget->setColumnWidth(1, 200);
    3. tableWidget->setColumnWidth(2, 150);
    4. tableWidget->setColumnWidth(3, 120);
    5. tableWidget->setColumnWidth(4, 150);

    7. 其实也可以设置宽度比例

    1. int width = m_Controls.tableWidget->width();
    2. m_Controls.tableWidget->setColumnWidth(0, width/5);
    3. m_Controls.tableWidget->setColumnWidth(1, width/5*2);
    4. m_Controls.tableWidget->setColumnWidth(2, width/5 );
    5. m_Controls.tableWidget->setColumnWidth(3, width/5);

    8. QTableWidgetItem QLable 字符过长 省略显示

    https://blog.csdn.net/q610098308/article/details/134446165

    9.隐藏 默认显示行头

    tableWidget->verticalHeader()->setVisible(false)

    10.设置选中时为整行选中       

    tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows); 

    tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers); 

    12. 显示QTableWidget组件中的线

    tableWidget->setShowGrid(true);

    13.去除选中虚线框

    tableWidget->setFocusPolicy(Qt::NoFocus); 

    14.设置非单元滚动

    1. tableWidget->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel);
    2. tableWidget->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);

    15.隔行交替背景色

    tableWidget->setAlternatingRowColors(true)

    16.QTableWidget类中的常用方法

    方法描述
    setROwCount(int row)设置QTableWidget表格控件的行数
    setColumnCount(int col)设置QTableWidget表格控件的列数
    setHorizontalHeaderLabels()设置QTableWidget表格控件的水平标签
    setVerticalHeaderLabels()设置QTableWidget表格控件的垂直标签
    setItem(int ,int ,QTableWidgetItem)在QTableWidget表格控件的每个选项的单元控件内添加控件
    horizontalHeader()获得QTableWidget表格控件的表格头,以便执行隐藏
    rowCount()获得QTableWidget表格控件的行数
    columnCount()获得QTableWidget表格控件的列数
    setEditTriggers(EditTriggers triggers)设置表格是否可以编辑,设置表格的枚举值
    setSelectionBehavior设置表格的选择行为
    setTextAlignment()设置单元格内文本的对齐方式
    setSpan(int row,int column,int rowSpanCount,int columnSpanCount)合并单元格,要改变单元格的第row行,column列,要合并rowSpancount行数和columnSpanCount列数
    row:要改变的行数
    column:要改变的列数
    rowSpanCount:需要合并的行数
    columnSpanCount:需要合并的列数
    setShowGrid()在默认情况下表格的显示是有网格的,可以设置True或False用于是否显示,默认True
    setColumnWidth(int column,int width)设置单元格行的宽度
    setRowHeight(int row,int height)

    设置单元格列的高度

    17.编辑规则的枚举值类型

    选项值描述
    QAbstractItemView.NoEditTriggers0No0不能对表格内容进行修改
    QAbstractItemView.CurrentChanged1Editing1任何时候都能对单元格进行修改
    QAbstractItemView.DoubleClicked2Editing2双击单元格
    QAbstractItemView.SelectedClicked4Editing4单击已经选中的内容
    QAbstractItemView.EditKeyPressed8Editing8当修改键按下时修改单元格
    QAbstractItemView.AnyKeyPressed16Editing16按任意键修改单元格
    QAbstractItemView.AllEditTriggers31Editing31包括以上所有条件

    18.表格选择行为的枚举值

    选择值描述
    QAbstractItemView.SelectItems0Selecting0选中单个单元格
    QAbstractItemView.SelectRows1Selecting1选中一行
    QAbstractItemView.SelectColumns2Selecting2选中一列

    19.单元格文本水平对齐方式

    选项描述
    Qt.AlignLeft将单元格内的内容沿单元格的左边缘对齐
    Qt.AlignRight将单元格内的内容沿单元格的右边缘对齐
    Qt.AlignHCenter在可用空间中,居中显示在水平方向上
    Qt.AlignJustify将文本在可用空间内对齐,默认从左到右

    20. 单元格文本垂直对齐方式

    选项描述
    Qt.AlignTop与顶部对齐
    Qt.AlignBottom与底部对齐
    Qt.AlignVCenter在可用空间中,居中显示在垂直方向上
    Qt.AlignBaseline与基线对齐

    如果要设置水平和垂直方向对齐方式,比如在表格空间内上下,左右居中对齐,那么只要使用Qt,AlignHCenter和Qt,AlignVCenter即可

    注意:

    如数据也需要设置列数,否则可能不显示;

    tableWidget->setColumnCount(10);

  • 相关阅读:
    终结痛点!超级素材中转站,轻松实现素材跨设备使用
    画程序流程图
    算法设计与分析大师班
    Java 泛型程序设计
    SQL Server 临时对象缓存
    大数据旅游数据分析:基于Python旅游数据采集可视化分析推荐系统
    这款国产API工具也太强了吧!让我放弃了postman
    【Unity开发实战】—— 2D项目1 - Ruby‘s Adventure 游戏世界中各个对象的交互(3-1)
    WPF开发经验-实现自带触控键盘的TextBox
    C++——string类用法指南
  • 原文地址:https://blog.csdn.net/q610098308/article/details/134449774
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号