QT DAY2

头文件

#ifndef WIDGET_H
#define WIDGET_H

#include 
#include 
#include 
#include   //按钮
#include    //标签
#include     //行编辑器

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

private slots:
    void my_signal_b2();    //退出槽函数
    void my_signal_b1();    //登录槽函数

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();

private:
    Ui::Widget *ui;

    QLabel *l1;      //定义背景图标指针
    QLabel *l2;      //定义登录图标指针
    QLabel *l3;      //定义密码图标指针
    QLineEdit *le1;     //定义账户行编辑器指针
    QLineEdit *le2;     //定义密码行编辑器指针
    QPushButton *b1;        //定义登录按钮的指针
    QPushButton *b2;        //定义退出按钮的指针
};
#endif // WIDGET_H

源文件

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    //设置窗口大小
    setFixedSize(600, 400);
    //设置窗体图标
    this->setWindowIcon(QIcon(":/icon/zhanghu"));
    //设置窗体标题
    this->setWindowTitle(QString("   shen"));
    //设置背景标签图片
    l1 = new QLabel(this);
    l1->resize(600, 220);       //设置标签大小
    l1->setScaledContents(true);        //设置自适应
    l1->setPixmap(QPixmap(":/icon/beij"));      //设置背景图片
    //设置账户图标
    l2 = new QLabel(this);
    l2->resize(40, 40);     //设置标签大小
    l2->setScaledContents(true);        //设置自适应
    l2->move(110, 195);     //设置标签坐标
    l2->setPixmap(QPixmap(":/icon/zhanghu"));      //设置背景图片
    //设置密码图标
    l3 = new QLabel(this);
    l3->resize(40, 40);     //设置标签大小
    l3->setScaledContents(true);        //设置自适应
    l3->move(110, 260);     //设置标签坐标
    l3->setPixmap(QPixmap(":/icon/passwd.png"));        //设置背景图片
    //设置账号行编辑器
    le1 = new QLineEdit(this);
    le1->resize(300, 40);       //设置行编辑器大小
    le1->move(170, 195);        //设置行编辑器坐标
    le1->setEchoMode(QLineEdit::Normal);      //设置明文模式
    le1->setPlaceholderText("账户");      //设置占位文本
    //设置密码行编辑器
    le2 = new QLineEdit(this);
    le2->resize(300, 40);       //设置行编辑器坐标
    le2->move(170, 260);        //设置行编辑器坐标
    le2->setEchoMode(QLineEdit::Password);      //设置密文模式
    le2->setPlaceholderText("密码");      //设置占位文本
    //定义登录按钮
    b1 = new QPushButton(this);
    b1->resize(135, 50);        //设置按钮大小
    b1->move(170, 320);     //设置按钮坐标
    b1->setIcon(QIcon(":/icon/userName.jpg"));
    b1->setText("登录");      //设置按钮文本
    //定义退出按钮
    b2 = new QPushButton(this);
    b2->resize(135, 50);        //设置按钮大小
    b2->move(335, 320);     //设置按钮坐标
    b2->setIcon(QIcon(":/icon/cancel.png"));
    b2->setText("退出");      //设置按钮文本

    connect(b2, SIGNAL(clicked()), this, SLOT(my_signal_b2()));//链接退出槽函数
    connect(b1, SIGNAL(clicked()), this, SLOT(my_signal_b1()));//链接登录槽函数
}

Widget::~Widget()
{
    delete ui;
}

//自定义的退出按钮对应的槽函数
void Widget::my_signal_b2()
{
    this->close();//关闭窗口
}
//自定义的登录按钮对应的槽函数
void Widget::my_signal_b1()
{
    QString name = le1->text();//接收行编辑器的内容
    QString pwd = le2->text();
    if(name == "admin"){//判断账户是不是正确
        if(pwd == "123456"){//判断密码是否正确
            qDebug()<<"登录成功";
            this->close();//清空内容
        }else{
            qDebug()<<"密码错误";
            le2->clear();
        }
    }else{
        qDebug()<<"账户错误";
        le1->clear();
        le2->clear();
    }
}

 

你可能感兴趣的:(qt,开发语言)