当QTableWidget的表格只有很少列时,表格的右边会出现一片空白区域,很不好看:
那么如何才能让表格的列占满表格呢?
方法1: 拉伸最后一列,让它填满剩余的空白。 调用QHeaderView 的 setStretchLastSection函数。
示例代码: table->horizontalHeader()->setStretchLastSection(true);
horizontalHeader()获取水平方向上的表头。显示结果:
方法2:每一列都拉伸, 使用QHeaderView 的setSectionResizeMode函数,将resize mode设置为 QHeaderView::Stretch。
示例代码: table->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
这种模式下列会自动填满可用空间,但是无法再通过手动调整列的宽度。
方法3:自己计算列宽并设置。 可以在QTableWidget的resizeEvent中获得列的宽度,然后按照需求分配给各列。
示例代码:
table>setColumnWidth(0, table->width()*0.2);
table>setColumnWidth(1, table->width()*0.2);
计算可能会有微小的误差,可以结合第一种方式使用。
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved