常用用法
设置尺寸
tableWidget->setGeometry(20,20,800,480);
设置行数和列数
tableWidget->setRowCount(5);//5行
tableWidget->setColumnCount(6);//6列
设置列的表头内容
QStringList sListHeader;
sListHeader <<"ID"<< "预处理类型" << "窗口大小" << "类型" << "阀值";
tableWidget->setHorizontalHeaderLabels(sListHeader);
设置内容自适应宽度
#define SS_UBUNTU
#if defined(SS_UBUNTU) //UBUNTU 环境
tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
tableWidget->verticalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
#else //ARM 环境
tableWidget->horizontalHeader()->setResizeMode(QHeaderView::ResizeToContents);
tableWidget->verticalHeader()->setResizeMode(QHeaderView::ResizeToContents);
#endif
添加一行
int iRow = tableWidget->rowCount();
tableWidget->setRowCount(iRow + 1);//总行数增加1
设置表头字体类型
QFont font = tableWidget->horizontalHeader()->font(); //先获取字体
font.setItalic(true);
font.setBold(true); //字体设置为粗体
tableWidget->horizontalHeader()->setFont(font); //设置每一列的标题字体为粗体
隔行变色
//设置各行变色
tableWidget->setAlternatingRowColors(true);
tableWidget->setStyleSheet("alternate-background-color:red;background:blue;color:#00ff00");
设置行属性
tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows); //设置选择模式,选择单行
tableWidget->verticalHeader()->setDefaultSectionSize(80); //设置行高
tableWidget->verticalHeader()->setSectionResizeMode(QHeaderView::Fixed);//禁止鼠标拖动缩放行高度
tableWidget->setRowHeight(0, 60);//设置第0行高度
// tableWidget->setRowHidden(1, true);//隐藏第0行
参考文章:
QTableWidget详细用法
https://blog.csdn.net/cwj066/article/details/83344705
Qt QTableWidget及基本操作(详解版)
http://c.biancheng.net/view/1863.html
QTableWidget属性及美化总结
https://blog.csdn.net/fanyun_01/article/details/78341615?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param
隔行变色:
https://blog.csdn.net/qq_33550519/article/details/77854593
一个不成功的隔行变色实现(需要表格内有真正的内容)
https://www.cnblogs.com/lhb3188/archive/2012/02/09/2343615.html
文章所提内容,作者亲测可用,如您阅读本文后达不到预期效果或者有侵权问题,请邮件联系作者 邮件地址:675763816@qq.com