widget.h
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include<QLabel>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr);
~Widget();
signals:
void Cancel_But();//取消信号
void Login_But();//登录信号
public slots:
void Cancel_But_close();//取消的槽函数
void Login_But_User();//登录的槽函数
private:
Ui::Widget *ui;
QLabel *Text;//定义标签为弹出登录是否成功的界面
};
#endif // WIDGET_H
widget.cpp
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
,Text(new QLabel())
{
ui->setupUi(this);
//去掉头部
this->setWindowFlag(Qt::FramelessWindowHint);
//去掉空白
this->setAttribute(Qt::WA_TranslucentBackground);
//将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中
connect(ui->pushButton_2,SIGNAL(clicked()),this,SLOT(Cancel_But_close()));
//登录按钮使用qt5版本的连接到自定义的槽函数中
connect(ui->pushButton,&QPushButton::clicked,this,&Widget::Login_But_User);
//设置弹出的登录成功或失败的界面
this->Text->resize(200,200);
}
Widget::~Widget()
{
delete ui;
}
void Widget::Cancel_But_close()
{
this->close();
}
void Widget::Login_But_User()
{
//判断账号密码是否正确,如果正确则弹出一个界面显示登录成功
if(ui->UserName->text()=="admin"&&ui->PassWd->text()=="123456")
{
Text->show();
Text->setText("登录成功");
}else//否则显示失败,并且清空密码框
{
Text->show();
Text->setText("登录失败");
ui->PassWd->clear();
}
}
登录成功的界面
登录失败