目录
1.常用控件
1.1 按钮组
1.1.1 QPushButton 最常用按钮,里面可以加图片
1.1.2 QToolButton 工具按钮 用于显示图片
- 1.1.2.1 toolButtonStyle 设置显示图片和文件
- 1.1.2.2 autoRaise透明凸起效果
1.1.3 QRadioButton 单选按钮
- 1.1.3.1 默认选中 setChecked(true)
1.1.4 QCheckBox 复选按钮
- 1.1.4.1 stateChanged 信号
- 1.1.4.2 0 未选中
- 1.1.4.3 1 半选中
- 1.1.4.4 2 选中
//单选按钮 默认选中 男 ui->rbtn_Man->setChecked(true); //点击女单选按钮 打印输出 connect(ui->radioButton_2, &QRadioButton::clicked,[=](){ qDebug() << "选中了女的"; }); //复选按钮 点击环境好之后 监听 connect(ui->checkBox,&QCheckBox::stateChanged,[=](int state){ qDebug() << state; });
1.2 QListWidget
1.2.1 创建项 QListWidgetItem * item = new QListWidgetItem("锄禾日当午");
1.2.2 将项加载到 控件中 ui->listWidget->addItem(item);
1.2.3 设置对齐方式 item->setTextAlignment(Qt::AlignHCenter);
//listWidget QListWidgetItem * item = new QListWidgetItem("锄禾日当午"); ui->listWidget->addItem(item); item->setTextAlignment(Qt::AlignHCenter); //QStringList QList<QString> list<String> QStringList list; list << "锄禾日当午"<< "汗滴禾下土"<< "谁知盘中餐"<< "粒粒皆辛苦"; ui->listWidget->addItems(list);
1.3 QTreeWidget 树控件
1.3.1 设置头 ui->treeWidget->setHeaderLabels(QStringList()<<"英雄"<<"英雄简介");
1.3.2 创建根项目 QTreeWidgetItem * liItem = new QTreeWidgetItem(QStringList()<<"力量");
1.3.3 将根项目添加到树控件中 ui->treeWidget->addTopLevelItem(liItem);
1.3.4 挂载子项目
1.3.4.1 QTreeWidgetItem *li = new QTreeWidgetItem(heroL1);
1.3.4.2 liItem->addChild(li);
//treeWidget框架 ui->treeWidget->setHeaderLabels(QStringList() << "英雄" << "英雄简介"); //创建出力量的根 QTreeWidgetItem *liItem = new QTreeWidgetItem (QStringList() <<"力量" ); QTreeWidgetItem *sduItem = new QTreeWidgetItem (QStringList() <<"速度" ); QTreeWidgetItem *zliItem = new QTreeWidgetItem (QStringList() <<"智力" ); //将根放入到树中 ui->treeWidget->addTopLevelItem(liItem); ui->treeWidget->addTopLevelItem(sduItem); ui->treeWidget->addTopLevelItem(zliItem); QStringList heroL1; heroL1 << "刚被猪" << "前排坦克,能在吸收伤害的同时造成可观的范围输出"; heroL2 << "船长" << "前排坦克,能肉能输出能控场的全能英雄"; heroM1 << "月骑" << "中排物理输出,可以使用分裂利刃攻击多个目标"; heroM2 << "小鱼人" << "前排战士,擅长偷取敌人的属性来增强自身战力"; heroZ1 << "死灵法师" << "前排法师坦克,魔法抗性较高,拥有治疗技能"; heroZ2 << "巫医" << "后排辅助法师,可以使用奇特的巫术诅咒敌人与治疗队友"; QTreeWidgetItem *li = new QTreeWidgetItem(heroL1); liItem->addChild(li);
1.4 QTableWidget 表格控件使用
1.4.1 设置列数 ui->tableWidget->setColumnCount(3);
1.4.2 设置水平表头 ui->tableWidget->setHorizontalHeaderLabels(QStringList() << "姓名" << "性别" << "年龄");
1.4.3 设置行数 ui->tableWidget->setRowCount(5);
//tableWidget表格控件使用 //设置列数 ui->tableWidget->setColumnCount(3); //设置水平表头 ui->tableWidget->setHorizontalHeaderLabels( QStringList() << "姓名" << "性别" << "年龄"); //设置行数 ui->tableWidget->setRowCount(5); QList<QString> nameList; nameList << "亚瑟" << "安琪拉" << "3" << "4" <<"5"; QStringList sexList; sexList << "男" << "女" << "男" << "女"<< "女"; 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[i])); ui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(i+10))); } //[i] == .at(i) // ui->tableWidget->setItem(0,2, // new QTableWidgetItem(QString("亚瑟"))); }
1.5 其他常用控件
1.5.1 栈控件 ui->stackedWidget->setCurrentIndex(0); 切换栈显示内容
1.5.2 下拉框 ui->comboBox->addItem("奔驰");
1.5.3 Qlabel显示图片 图片显示完全 ui->label->setScaledContents(true);
ui->label->setPixmap(QPixmap("D:/桌面/新建文件夹/050F62245B1397603453ADCF6D512581.jpg")); ui->label->setScaledContents(true);
1.5.4 QLabel显示gif图片
//利用QLabel显示动态图片 格式要求gif QMovie * movie = new QMovie(":/Image/mario.gif"); ui->label->setMovie(movie); movie->start();
#include "widget.h" #include "ui_widget.h" #include "QMovie" Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); //点击按钮 切换 stacked容器 //默认显示 ui->stackedWidget->setCurrentIndex(1); connect(ui->btn1,&QPushButton::clicked,[=](){ ui->stackedWidget->setCurrentIndex(0); }); connect(ui->btn2,&QPushButton::clicked,[=](){ ui->stackedWidget->setCurrentIndex(1); }); connect(ui->btn3,&QPushButton::clicked,[=](){ ui->stackedWidget->setCurrentIndex(2); }); //下拉框使用 ui->comboBox->addItem("奔驰"); ui->comboBox->addItem("宝马"); ui->comboBox->addItem("拖拉机"); //点击按钮 选中拖拉机下拉框内容 connect(ui->btn4,&QPushButton::clicked,[=](){ //ui->comboBox->setCurrentIndex(2); ui->comboBox->setCurrentText("拖拉机"); }); //利用QLabel显示图片 ui->label->setPixmap(QPixmap("D:/桌面/新建文件夹/050F62245B1397603453ADCF6D512581.jpg")); //利用QLabel显示动态图片 格式要求gif QMovie * movie = new QMovie(":/Image/mario.gif"); ui->label->setMovie(movie); movie->start(); } Widget::~Widget() { delete ui; }
day03 over!!!