本篇文章讲Qt 类似Excel的表格样式的显示。未完待续中~~~
一、静态设置表格的内容和样式
//设置顶部的表头名称
QStringList list={"*","1","2","3","4"};
ui->tableWidget->setColumnCount(5);//设置表为5列
ui->tableWidget->verticalHeader()->setHidden(true);//隐藏数字序号列,数字列如下图所示
//ui->tableWidget->setColumnWidth(0,15);
ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);//平均分配列宽
//设置顶部表头的背景颜色和文字颜色
ui->tableWidget->horizontalHeader()->setStyleSheet("QHeaderView::section{background:rgb(67,123,181);color: white;}");
//添加顶部表头
ui->tableWidget->setHorizontalHeaderLabels(list);
//添加16行数据
for(int i=1;i<17;i++)
{
//添加一个新行
ui->tableWidget->setRowCount(i);
//添加该行第一列的单元格内容,Init_sheetcolumnname[i-1]是QString类型
ui->tableWidget->setItem(i-1,0,new QTableWidgetItem(Init_sheetcolumnname[i-1]));
//设置该单元格的文字颜色
ui->tableWidget->item(i-1,0)->setTextColor(Qt::white);
//设置该单元格的文字对齐方式
ui->tableWidget->item(i-1,0)->setTextAlignment(Qt::AlignCenter);
//设置该单元格的背景颜色
ui->tableWidget->item(i-1,0)->setBackground(QColor(67,123,181));
//设置该行其他单元格
for(int j=1;j<5;j++)
{
//添加该行其他单元格的内容
ui->tableWidget->setItem(i-1,j,new QTableWidgetItem("U"));
//添加该行其他单元格的背景颜色
ui->tableWidget->item(i-1,j)->setBackground(QColor(128, 128, 128));
//添加该行其他单元格的文字对齐方式
ui->tableWidget->item(i-1,j)->setTextAlignment(Qt::AlignCenter);
}
}