实现登录界面
头文件
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include<QDebug>
#include<QString>
#include<QTextToSpeech>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE
class Widget : public QWidget
{
Q_OBJECT
signals:
void my_signal();
public:
Widget(QWidget *parent = nullptr);
~Widget();
private slots:
void cancel_slot();
void login_slot();
private:
Ui::Widget *ui;
};
#endif // WIDGET_H
源文件
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
//设置窗口标题
this->setWindowTitle("ZPP");
//设置窗体图标
this->setWindowIcon(QIcon(":/icon/login.png"));
this->setFixedSize(this->size()); // 设置固定尺寸
//设置标签 自适应大小
ui->logoLab->setScaledContents(true);
//设置logo
ui->logoLab->setPixmap(QPixmap(":/icon/bg.jpg"));
//设置账户和密码使用图片表示
ui->userNameLab->setScaledContents(true);
ui->pwdLab->setScaledContents(true);
ui->userNameLab->setPixmap(QPixmap(":/icon/userName.jpg"));
ui->pwdLab->setPixmap(QPixmap(":/icon/passwd.jpg"));
//对行编辑器进行设置
ui->userNameEdit->setPlaceholderText("账户/手机/邮箱");
ui->pwdEdit->setPlaceholderText("密码"); //设置默认值
ui->pwdEdit->setEchoMode(QLineEdit::Password); //设置密文模式
//给按钮设置图标
ui->loginBtn->setIcon(QIcon(":/icon/login.png"));
ui->cancelBtn->setIcon(QIcon(":/icon/cancel.png"));
//将取消按钮,连接到自定义的槽函数中,处理相关逻辑
connect(ui->cancelBtn,SIGNAL(clicked()),this,SLOT(cancel_slot()));
//将登录按钮信号,连接到自定义的槽函数中,处理相关逻辑
connect(ui->loginBtn,SIGNAL(clicked()),this,SLOT(login_slot()));
}
Widget::~Widget()
{
delete ui;
}
void Widget::cancel_slot()
{
this->close(); //关闭登录对话框
}
void Widget::login_slot()
{
// qDebug()<<"hello";
QString userName=ui->userNameEdit->text();
QString pwd=ui->pwdEdit->text();
//验证登录
if(userName=="admin"&&pwd=="123")
{
qDebug()<<"登录成功";
this->close();
}else
{
qDebug()<<"登录失败";
ui->pwdEdit->clear();
}
}
运行结果: