基础目标:创建两个按钮,open和close,点击open打开一个新窗口,点击close,关闭窗口。
进阶目标:创建一个按钮,点击一下打开新窗口,且按钮文本变成close,再点击一下关闭按钮。
知识点:1.如何创建窗口和按钮
2. 信号与槽的连接
3. lambda函数的使用
4.如何调出按钮的文本
#include "widget.h"#include "ui_widget.h"#include<QPushButton>//按钮文件#include<QWidget>//窗口文件#include<QDebug>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget){ui->setupUi(this);//新建窗口QWidget * one=new QWidget;//按钮QPushButton *btn1=new QPushButton("open",this);QPushButton *btn2=new QPushButton("colse",this);btn1->move(150,100);btn2->move(150,200);//主窗口设置this->resize(400,400);setWindowTitle("work");//目标1//open按钮的连接connect(btn1,&QPushButton::clicked,one,[=](){// one->show();});//close按钮的连接connect(btn2,&QPushButton::clicked,one,[=](){one->close();this->close();});//目标2//open点击一下,按钮文本变colse,再次点击就关闭one窗口connect(btn1,&QPushButton::clicked,one,[=](){if(btn1->text()==QString("colse2")){one->close();qDebug()<<"作业完成"<<endl;qDebug("sss");}else{one->show();btn1->setText("colse2");}});}Widget::~Widget(){delete ui;}