1.思维导图
2> 将登录界面升级优化【资源文件的添加】
3>
在登录界面的登录取消按钮进行一下设置:
使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数
将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin",密码是否为"123456",如果账号密码匹配成功,则输出“登录成功”,并关闭该界面,如果匹配失败,则输出登录失败,并将密码框中的内容清空
#include "mywidget.h"
MyWidget::MyWidget(QWidget *parent)
: QWidget(parent)
, btn1(new QPushButton("登录",this)) //给按钮实例化空间
, btn2(new QPushButton("取消",this))
, edit1(new QLineEdit(this))
, edit2(new QLineEdit(this))
{
//======================设置窗口===========
//设置窗口的标题
this->setWindowTitle("Steam");
//设置背景颜色
this->setStyleSheet("background-color:rgb(33,35,40)");
//设置固定窗口的大小
this->setFixedSize(881,550);
//设置纯净窗口, 去掉头部
this->setWindowFlag(Qt::FramelessWindowHint);
//===============设置行编辑==================
//创建行编辑器
// QLineEdit *edit1 = new QLineEdit;
//设置父组件
edit1->setParent(this);
//设置大小
edit1->resize(485,50);
//移动
edit1->move(50,148);
//设置背景、文本颜色,设置倒角
edit1->setStyleSheet("background-color:rgb(50,53,60);color:rgb(255,255,255);border-radius:5px");
// QLineEdit *edit2 = new QLineEdit;
//设置父组件
edit2->setParent(this);
//设置大小
edit2->resize(485,50);
//移动
edit2->move(50,235);
//设置显示模式
edit2->setEchoMode(QLineEdit::Password);
//设置背景、文本颜色,设置倒角
edit2->setStyleSheet("background-color:rgb(50,53,60);color:rgb(255,255,255);border-radius:5px");
//===============设置标签==================
//创建标签
QLabel *lab1 = new QLabel(this);
//设置大小
lab1->resize(330,120);
//设置图片
lab1->setPixmap(QPixmap(":/pictrue/steam.png"));
QLabel *lab2 = new QLabel("用账户名称登录",this);
//设置大小
lab2->resize(110,20);
//移动
lab2->move(50,120);
//设置背景颜色
lab2->setStyleSheet("background-color:rgb(33,35,40);color:rgb(25,138,199)");
QLabel *lab3 = new QLabel("密码",this);
//设置大小
lab3->resize(110,20);
//移动
lab3->move(50,213);
//设置背景颜色
lab3->setStyleSheet("background-color:rgb(33,35,40);color:rgb(161,175,175)");
QLabel *lab6 = new QLabel(this);
//设置大小
lab6->resize(263,263);
//移动
lab6->move(580,147);
//设置图片
lab6->setPixmap(QPixmap(":/pictrue/wodepeizhenshi.png"));
//让图片自动适应lab
lab6->setScaledContents(true);
QLabel *lab7 = new QLabel("或者用人脸登录",this);
//设置大小
lab7->resize(110,20);
//移动
lab7->move(580,125);
//设置背景颜色
lab7->setStyleSheet("background-color:rgb(33,35,40);color:rgb(25,138,199)");
QLabel *lab8 = new QLabel("我无法登录,请求帮助",this);
//设置大小
lab8->resize(150,20);
//移动
lab8->move(50,475);
//设置背景颜色
lab8->setStyleSheet("background-color:rgb(33,35,40);color:rgb(161,175,175)");
QLabel *lab9 = new QLabel("还没有Steam账户?去找Steam管家吧",this);
//设置大小
lab9->resize(250,20);
//移动
lab9->move(585,475);
//设置背景颜色
lab9->setStyleSheet("background-color:rgb(33,35,40);color:rgb(161,175,175)");
//===============设置按钮==================
//创建按钮
// QPushButton *btn1 = new QPushButton("登录",this);
//设置大小
btn1->resize(340,60);
//移动
btn1->move(122,311);
//设置背景颜色
btn1->setStyleSheet("background-color:rgb(20,164,255);color:rgb(255,255,255);border-radius:5px");
// QPushButton *btn2 = new QPushButton("取消",this);
//设置大小
btn2->resize(340,60);
//移动
btn2->move(122,390);
//设置背景颜色
btn2->setStyleSheet("background-color:rgb(20,164,255);color:rgb(255,255,255);border-radius:5px");
//=====================设置连接函数===============
connect(btn1,&QPushButton::clicked,this,&MyWidget::slot1);
connect(btn2,SIGNAL(clicked()),this,SLOT(slot2()));
}
MyWidget::~MyWidget()
{
}
void MyWidget::slot1()
{
if(edit1->text() == "admin" && edit2->text() == "123456")
{
qDebug() << "登录成功";
this->close();
}
else
{
qDebug() << "登录失败";
edit2->clear();
}
}
void MyWidget::slot2()
{
this->close();
}