一杯清酒邀明月
天下本无事,庸人扰之而烦耳。

效果:

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  
4 tableWidget.verticalHeader().SectionResizeMode(QHeaderView::Stretch)
5 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);

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  
3 tableWidget->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);

15.隔行交替背景色

tableWidget->setAlternatingRowColors(true)

16.QTableWidget类中的常用方法

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

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

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

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

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

注意:

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

tableWidget->setColumnCount(10);

 

posted on 2024-03-18 13:11  一杯清酒邀明月  阅读(1978)  评论(0编辑  收藏  举报