【Qt系列】QtableWidget表格列宽自适应表格大小

您所在的位置:网站首页 设置表格大小怎么设置 【Qt系列】QtableWidget表格列宽自适应表格大小

【Qt系列】QtableWidget表格列宽自适应表格大小

2024-07-13 03:21| 来源: 网络整理| 查看: 265

在这里插入图片描述 在groupBox中添加了一个QtableWidget,即表格组件。这个表格只有5列,只占据了表格的一部分,不是很好看。

核心代码如下,最重要的是最后一句,让标题栏自适应大小。

QTableWidget *taskListTable = new QTableWidget(20,5); //任务列表 taskListTable->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored); taskListBoxLayout->addWidget(taskListTable); //**表格标题 QStringList headTable = {"任务编号","起点","终点","需求时刻","载重量"}; taskListTable->setHorizontalHeaderLabels(headTable); QFont font("song", 12, QFont::Bold); taskListTable->horizontalHeader()->setFont(font); //设置字体 taskListTable->verticalHeader()->setHidden(true); //隐藏行标题 taskListTable->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);

在这里插入图片描述

taskListTable->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);

接下来解释一下这个函数,horizontalHeader返回的是表格的垂直行标题,也就是第一行标题栏。这是个特殊的类,叫QHeaderView类。对标题栏进行调整,往往就是对这个类进行调整。 在这里插入图片描述 setSectionResizeMode函数是上述类的一个函数,设置标题如何调整为给定模式所描述的大小。 在这里插入图片描述 QHeaderView::ResizeMode就是模式的枚举量,主要就是调整标题栏大小,即列宽。存在以下的取值:

模式值描述QHeaderView::Interactive用户可以手动调节列宽,也可以通过调用resizeSection函数调整。QHeaderView::Fixed用户无法手动调整列宽,只能调用resizeSection函数调整。QHeaderView::Stretch列宽会自动调节以填充可用空间。大小不能由用户更改或以编程的方式更改。QHeaderView::ResizeToContents列宽会自动根据内容调整为最佳大小。大小不能由用户更改或以编程的方式更改。


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3