一 QTableWidget的基本操作
ui->tableWidget->clear();
ui->tableWidget->setColumnCount(12);//设置行数
ui->tableWidget->setRowCount(7);//设置列数
ui->tableWidget->setHorizontalHeaderLabels(QStringList()<<"00:00"<<"01:00"<<"02:00");//设置列标签
ui->tableWidget->setVerticalHeaderLabels(QStringList()<<"温度"<<"湿度"<<"能见度");//设置行标签
ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectItems);//设置表格选中单个单元格的方式
//ui->tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);//禁止修改
ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);//单个选中和多个选中的设置
//ui->tableWidget->verticalHeader()->setVisible(false); //隐藏列表头
ui->tableWidget->horizontalHeader()->setDefaultSectionSize(70); //设置列宽
ui->tableWidget->verticalHeader()->setDefaultSectionSize(50); //设置行宽
QFont font = ui->tableWidget->horizontalHeader()->font(); //先获取字体
font.setBold(true); //字体设置为粗体
ui->tableWidget->horizontalHeader()->setFont(font); //设置每一列的标题字体为粗体
二 QTableWidget的转到槽函数
1.获取单元格数据的信号
void Dialog::on_tableWidget_clicked(const QModelIndex &index)
{
QModelIndex index = ui->tableWidget->currentIndex();//类用于定位数据模型中的数据
QString str = ui->tableWidget->item(index.row(),index.column())->text();//获取点击当前项的数据
}
void Dialog::on_tableWidget_itemClicked(QTableWidgetItem *item)
{
item =ui->tableWidget->currentItem();
qDebug()<<item->text();//获取点击当前项的数据
}
三 QTableWidget的各种应用
1.QTableWidget获取选中行内容
QList<QTableWidgetItem*> items = ui->tableWidget->selectedItems();
int count = items.count();
for(int i = 0; i < count; i++)
{
int row = ui->tableWidget->row(items.at(i));
QTableWidgetItem *item = items.at(i);
QString name = item->text(); //获取内容
}
2.QTableWidget中的所有内容居中
for (int i=0;i<7;i++)
{
for (int j=0;j<12;j++)
{
ui->tableWidget->item(i,j)->setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
}
}