12月28日(结束)
1.界面

布局:
栅格、水平、垂直
弹簧
默认窗口和控件有:9像素间隙
2.控件
2.1button控件
2.1.1toolbotton
2.1.2.Radio button and groupbox

外面是box
里面是radio button
这样两边的都不干涉,都可以选择
#include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ui->setupUi(this);//设置单选按钮默认选择ui->rBtnMan->setChecked(true);//选中女后 打印信息connect(ui->rBtnWoman, &QRadioButton::clicked, [](){qDebug() << "选中女";});}Widget::~Widget(){delete ui;}
2.1.3.checkBox

//多选按钮 2s是选中 0是未选中 可选 半选connect(ui->cBoxPrice, &QCheckBox::stateChanged, [=](int state){qDebug() << state;});
2.2 ItemWidget
2.2.1 QListWidget控件
QListWidgetItem *item -> 每行内容
listWidget->addItem(item)
设置居中方式item->setTextAlignment(Qt::AlignHCenter);
用additems 一次性添加多行
#include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){//用listWidget写诗// QListWidgetItem *item = new QListWidgetItem("锄禾日当午");// //一行诗放到listWidget控件// ui->listWidget->addItem(item);// item->setTextAlignment(Qt::AlignHCenter);// QStringList QList<QString>QStringList list;list << "锄禾日当午" << "汗滴禾下土" << "谁知盘中餐" << "粒粒皆辛苦";ui->listWidget->addItems(list);}Widget::~Widget(){delete ui;}
2.2.2 QTreeWidget控件
1. 设置头 (只是在原有界面设置而已,所以不用new)
ui->treeWidget->setHeaderLabels(QStringList()<< “英雄”<< “英雄介绍”);
2. 创建根节点(新创建的,所以需要new)
QTreeWidgetItem liItem = new QTreeWidgetItem(QStringList()<< “力量”);
3. 添加根节点 到 树控件上
ui->treeWidget->addTopLevelItem(liItem);
*4. 添加子节点(创建子结点,也需要new)
liItem->addChild(l1);
利用QStringList()<<”…” 左移实现添加字符串到List列表
#include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ui->setupUi(this);//设置水平头 匿名函数ui->treeWidget->setHeaderLabels(QStringList() << "英雄" << "英雄介绍");QTreeWidgetItem *liItem = new QTreeWidgetItem(QStringList() << "力量");QTreeWidgetItem *mingItem = new QTreeWidgetItem(QStringList() << "敏捷");QTreeWidgetItem *zhiItem = new QTreeWidgetItem(QStringList() << "智力");//加载顶层结点ui->treeWidget->addTopLevelItem(liItem);ui->treeWidget->addTopLevelItem(mingItem);ui->treeWidget->addTopLevelItem(zhiItem);//追加子节点QStringList heroL1;heroL1 << "刚被猪" << "前排坦克,能在吸收伤害的同时造成可观的范围输出";QTreeWidgetItem *l1 = new QTreeWidgetItem(heroL1);liItem->addChild(l1);}Widget::~Widget(){delete ui;}
2.2.3 QTableWidget
(1)使用QStringList() << “…”
(2)使用QStringList nameList;(nameList[i])
(3)使用QList < QString > sexList;(sexList.at[i])
#include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ui->setupUi(this);//TableWidget控件//设置列数ui->tableWidget->setColumnCount(3);//设置水平表头ui->tableWidget->setHorizontalHeaderLabels(QStringList() << "姓名" << "性别" << "年龄");//设置行数ui->tableWidget->setRowCount(5);//设置正文ui->tableWidget->setItem(0, 0, new QTableWidgetItem("亚瑟"));QStringList nameList;nameList << "亚瑟" << "赵云" << "张飞" << "关羽" << "花木兰";QList<QString> sexList;sexList << "男" << "男" << "男" << "男" << "女";for (int i = 0; i < 5; ++i) {int col = 0;ui->tableWidget->setItem(i, col++, new QTableWidgetItem(nameList[i]));//at 方法不会越界ui->tableWidget->setItem(i, col++, new QTableWidgetItem(sexList.at(i)));//QString->intui->tableWidget->setItem(i, col++, new QTableWidgetItem(QString::number(i+18)));}}Widget::~Widget(){delete ui;}
2.3 other
1.

#include "widget.h"#include "ui_widget.h"Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ui->setupUi(this);//栈控件使用//设置默认定位 不同indexui->stackedWidget->setCurrentIndex(0);//btn1connect(ui->btn_1, &QPushButton::clicked, [=](){ui->stackedWidget->setCurrentIndex(0);});//btn2connect(ui->btn_2, &QPushButton::clicked, [=](){ui->stackedWidget->setCurrentIndex(1);});}Widget::~Widget(){delete ui;}
2.下拉框和label添加图片

#include "widget.h"#include "ui_widget.h"#include <QMovie>Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget){ui->setupUi(this);//设置下拉框ui->comboBox->addItem("奔驰");ui->comboBox->addItem("宝马");ui->comboBox->addItem("拖拉机");//按钮选中connect(ui->pushButton, &QPushButton::clicked, [=](){// ui->comboBox->setCurrentIndex(2);ui->comboBox->setCurrentText("拖拉机");});//label设置图片// ui->lable_pic->setPixmap(QPixmap(":/Image/butterfly.png")); //设置图片//label设置动图QMovie *mov = new QMovie(":/Image/mario.gif");ui->lable_pic->setMovie(mov);mov->start();}Widget::~Widget(){delete ui;}

选择图片和文字的格式,是否浮现
