//创建表格
QTableWidget *tableWidget = new QTableWidget(10,5,ui->centralWidget);
// 使表格平铺在界面
tableWidget-> horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
tableWidget->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);
tableWidget->show();
// 使表格平铺在界面
tableWidget-> horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
tableWidget->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);
// 设置控制大小
tableWidget->resize(500,500);
// 删除列
tableWidget->removeColumn(0);
// 删除行
tableWidget->removeRow(0);
1,设置表头
QStringList header;
header<<"姓名"<<"年龄";
header.push_back(QString("备注"));
tableWidget->setHorizontalHeaderLabels(header);
tableWidget->setVerticalHeaderLabels(header);
// 隐藏表头
tableWidget->verticalHeader()->setVisible(false);
// 最后一列自动宽度
tableWidget->horizontalHeader()->setStretchLastSection(true);
2,一般显示
tableWidget->setItem(0,0,new QTableWidgetItem("张三"));
tableWidget->setItem(0,1,new QTableWidgetItem("33"));
// 内容居中显示
tableWidget->item(0,0)->setTextAlignment(Qt::AlignCenter);
// 文本颜色
tableWidget->item(0,0)->setTextColor(QColor(200,100,100));
// 字体
tableWidget->item(0,0)->setFont(QFont("Microsoft Yahei"));
// 背景颜色
tableWidget->item(0,0)->setBackgroundColor(QColor(100,100,100));
3,放一个控件
// 单元格里放一个控件
QComboBox *comBox = new QComboBox();
comBox->addItem("Male");
comBox->addItem("Female");
tableWidget->setCellWidget(1,1,comBox);
4,加一个图标
QTableWidget *tableWidget = new QTableWidget(10,5,ui->centralWidget);
tableWidget->show();
QStringList header;
header<<"姓名"<<"年龄";
tableWidget->setHorizontalHeaderLabels(header);
tableWidget->setItem(0,0,new QTableWidgetItem(QIcon("D:/1.png"),"张三"));
tableWidget->setItem(0,1,new QTableWidgetItem("33"));
5,获取内容/清除内容/关闭
QString string = tableWidget->item(0,0)->text();
qDebug() << string << endl;
// 清除所有内容含表头// 清除内容不含表头
tableWidget->clear();
tableWidget->close();
6, 设置行高和列宽
tableWidget->setColumnWidth(3,300);
tableWidget->setRowHeight(3,30);
7,单元格选中行为
// 选中整行
tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);
// 选中单元格
tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems);
// 选中一列
tableWidget->setSelectionBehavior(QAbstractItemView::SelectColumns);
// 只允许选中一行
tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);
// 允许选中多行(默认情况)
tableWidget->setSelectionMode(QAbstractItemView::ExtendedSelection);
8,合并单元格
QTableWidget *tableWidget = new QTableWidget(10,5,ui->centralWidget);
tableWidget->show();
QStringList header;
header<<"姓名"<<"年龄";
tableWidget->setHorizontalHeaderLabels(header);
tableWidget->setItem(0,0,new QTableWidgetItem("张三"));
tableWidget->setItem(0,1,new QTableWidgetItem("33"));
tableWidget->setSpan(1,0,1,2);
9,信号
(1)头函数
public slots:
void on_itemChanged(QTableWidgetItem *item);
QTableWidget *tableWidget = new QTableWidget(10,5,ui->centralWidget);
(2)建立表格建立槽函数
tableWidget->show();
QStringList header;
header<<"姓名"<<"年龄";
tableWidget->setHorizontalHeaderLabels(header);
connect(tableWidget, SIGNAL(itemChanged(QTableWidgetItem *)), this, SLOT(on_itemChanged(QTableWidgetItem *)));
横向控件