上篇QT从入门到实战x篇_18_QTreeWidget控件(实现类似于树状结构的数据效果;具体使用方法;QStringList的使用方法)介绍了QTreeWidget控件的使用方法,本篇将会介绍Qt中QTableWidget控件的使用方法。
本篇将会利用QTableWidget控件实现类似于以下形式的数据表格显示界面。
在 UI中拖入 “TableWidget”控件,通过点击上方的 “垂直布局”可以实现控件占满整个 widget。
//设置列数
ui->tableWidget->setColumnCount(3);
//设置水平表头
ui->tableWidget->setHorizontalHeaderLabels(QStringList()<
运行结果:
3. 设置行数
//设置行数
ui->tableWidget->setRowCount(5);
4. 设置正文中单个行列值
//设置正文
ui->tableWidget->setItem(0,0,new QTableWidgetItem(QString::fromLocal8Bit("亚瑟")));
运行结果:
5. 填满整个列表
注意: 下面的程序中使用了
QStringList nameList;和
QList sexList;,其使用方法基本一致,
QList对象可以使用
[i]和
.at[i]的方式访问数据,当存在越界时
[i]程序就会挂掉,
.at[i]的方式就会提示异常。
QStringList nameList;
nameList<<"yase"<<"zhangfei"<<"zhaoyun"<<"liubei"<<"guanyu";
QList sexList;
sexList<<"man"<<"man"<<"man"<<"man"<<"man";
//填充行列内信息
for(int i=0;i<5;i++)
{
int col=0;
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(nameList[i]));
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(sexList.at(i)));
//int 转 QString
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(i+18)));
}
运行结果:
6. 学习视频地址:QT从入门到实战x篇_19_QTableWidget控件
整体代码:
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
//设置列数
ui->tableWidget->setColumnCount(3);
//设置水平表头
ui->tableWidget->setHorizontalHeaderLabels(QStringList()<tableWidget->setRowCount(5);
//设置正文
// ui->tableWidget->setItem(0,0,new QTableWidgetItem(QString::fromLocal8Bit("亚瑟")));
QStringList nameList;
nameList<<"yase"<<"zhangfei"<<"zhaoyun"<<"liubei"<<"guanyu";
QList sexList;
sexList<<"man"<<"man"<<"man"<<"man"<<"man";
//填充行列内信息
for(int i=0;i<5;i++)
{
int col=0;
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(nameList[i]));
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(sexList.at(i)));
//int 转 QString
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(i+18)));
}
}
Widget::~Widget()
{
delete ui;
}



