1.QListWidget 列表容器
1.1 两种添加到列表方式
- 1.1.1使用addItem添加一行内容 参数为:QListWidgetItem* item
- 1.1.2使用addItems添加多行内容 参数为:QStringList &Label
- 1.1.2 在单行添加中可以设置居中方式
item->setTextAlignment(Qt::AlignHCenter);
测试代码:
-
//QListWidget列表容器使用 listWidget=new QListWidget(this); lable=new QLabel(this); lable->setFixedWidth(70); listWidget->move(0,50); QListWidgetItem *item=new QListWidgetItem("列表"); item->setTextAlignment(Qt::AlignHCenter); listWidget->addItem(item); listWidget->addItem(new QListWidgetItem("Line")); listWidget->addItem(new QListWidgetItem("Circle")); listWidget->addItems(QStringList()<<"Rectangle"<<"Oval"); connect(listWidget,&QListWidget::currentTextChanged,lable,&QLabel::setText);
效果图:
2.QTreeWidget 树控件
2.1 设置头
ui->treeWidget->setHeaderLabels(QStringList()<<"英雄"<<"英雄介绍");
2.2 创建根节点
QTreeWidgetItem *litem=new QTreeWidgetItem(QStringList()<<"力量");
2.3 添加顶层的节点
//加在顶层的节点
ui->treeWidget->addTopLevelItem(litem);
2.4 添加字节点
//追加子节点
QStringList heroL1;
heroL1<<"别被猪"<<"前排坦克,能在吸收伤害的同时造成可怕的伤害输出";
QTreeWidgetItem *l1=new QTreeWidgetItem(heroL1);
litem->addChild(l1);
测试代码:
//treewidget 树控件使用
//设置水平头
ui->treeWidget->setHeaderLabels(QStringList()<<"英雄"<<"英雄介绍");
QTreeWidgetItem *litem=new QTreeWidgetItem(QStringList()<<"力量");
QTreeWidgetItem *mitem=new QTreeWidgetItem(QStringList()<<"敏捷");
QTreeWidgetItem *zhiitem=new QTreeWidgetItem(QStringList()<<"智力");
//加在顶层的节点
ui->treeWidget->addTopLevelItem(litem);
ui->treeWidget->addTopLevelItem(mitem);
ui->treeWidget->addTopLevelItem(zhiitem);
//追加子节点
QStringList heroL1;
heroL1<<"别被猪"<<"前排坦克,能在吸收伤害的同时造成可怕的伤害输出";
QTreeWidgetItem *l1=new QTreeWidgetItem(heroL1);
litem->addChild(l1);
效果图:
3.Table Widget 控件
步骤:
-
设置列数 setColumnCount
-
设置水平表头 setHorizonlHeaderLabels
-
设置行数 setRowCount
-
设置正文 setItem
测试代码:
//TableWidget控件
//设置列数
ui->tableWidget->setColumnCount(3);
//设置水平表头
ui->tableWidget->setHorizontalHeaderLabels(QStringList()<<"姓名"<<"性别"<<"年龄");
//设置行数
ui->tableWidget->setRowCount(5);
//设置正文
//ui->tableWidget->setItem(0,0,new QTableWidgetItem("亚瑟"));
QStringList heroList;
heroList<<"亚瑟"<<"赵云"<<"花木兰"<<"张飞"<<"刘备";
//容器存储数据
QList<QString>sexList;
sexList<<"男"<<"男"<<"女"<<"男"<<"男";
for(int i=0;i<5;i++)
{
int col=0;
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(heroList[i]));
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(sexList.at(i)));
//int 转QString
ui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(i+18)));
}
效果图: