h 文件
#ifndef MYWIN_H #define MYWIN_H #include <QWidget> QT_BEGIN_NAMESPACE namespace Ui { class MyWin; } QT_END_NAMESPACE class MyWin : public QWidget { Q_OBJECT public: MyWin(QWidget *parent = nullptr); ~MyWin(); private slots: void loadbtn_clicked(); //系统定义的loadbtn发送的信号对应的槽函数 void cancelbtn_clicked(); //系统定义的cancelbtn发送的信号对应的槽函数 private: Ui::MyWin *ui; }; #endif // MYWIN_H
.cpp文件
#include "mywin.h" #include "ui_mywin.h" #include<QString> #include<QDebug> MyWin::MyWin(QWidget *parent) : QWidget(parent) , ui(new Ui::MyWin) { ui->setupUi(this); //设置窗口Icon this->setWindowIcon(QIcon("C:/Users/Lenovo/Desktop/icon.png")); //设置窗口标题 this->setWindowTitle("QQ登录"); //设置logo ui->logolab->setPixmap(QPixmap("D:/QT/day2zuoye/icon/logo.png")); //设置用户名和密码的icon ui->usernamelab->resize(40,40); ui->usernamelab->setScaledContents(true); ui->usernamelab->setPixmap(QPixmap("D:/QT/day2zuoye/icon/userName.jpg")); ui->passwordlab->resize(40,40); ui->passwordlab->setScaledContents(true); ui->passwordlab->setPixmap(QPixmap("D:/QT/day2zuoye/icon/passwd.jpg")); //设置密码的行编辑器为密文模式 ui->passwordEdit->setEchoMode(QLineEdit::Password); //设置两个按钮的icon ui->loadbtn->setIcon(QIcon("D:/QT/day2zuoye/icon/login.jpg")); ui->cancelbtn->setIcon(QIcon("D:/day2zuoye/icon/cancel.jpg")); //将loadbtn的clicked信号与自定义的槽函数进行连接 connect(ui->loadbtn,SIGNAL(clicked()),this,SLOT(loadbtn_clicked())); //将cancelbtn的clicked信号与自定义的槽函数进行连接 connect(ui->cancelbtn,SIGNAL(clicked()),this,SLOT(cancelbtn_clicked())); } MyWin::~MyWin() { delete ui; } 自定义处理loadbtn发射信号的槽函数,,,,(判断账户密码是否正确,正确输出登录成功并关闭界面,失败则清空密码) void MyWin::loadbtn_clicked() { if( ui->usernameEdit->text()=="admir" && ui->passwordEdit->text() == "123456") { qDebug()<<"********登录成功********"; close(); }else { qDebug()<<"*********登录失败********"; ui->passwordEdit->clear(); } } //自定义处理cancelbtn发射信号的槽函数(关闭界面) void MyWin::cancelbtn_clicked() { //关闭界面 close(); }