完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示R登录成功“,提供一个Ok按钮,用户点击OK后,关闭登录界面,跳转到其他界面,

如果账号和密码不匹配,弹出错误对话框,给出信息"账号和密码不匹配,是否重新登录",并提供两个按钮Yes|No,用户点击Yes后,清除密码框中的内容,继续让用户进行登录,如果用户点击No按钮,则直接关闭登录界面如果用户点击取消按钮,则弹出一个问题对话框,给出信息"您是否确定要退出登录?",并给出两个按钮Yes|INo,用户点击Yes后,关闭登录界面,用户点击No后,关闭对话框,继续执行登录功能

QT61.h

cpp 复制代码
#ifndef QT61_H
#define QT61_H

#include <QWidget>

namespace Ui {
class QT61;
}

class QT61 : public QWidget
{
    Q_OBJECT

public:
    explicit QT61(QWidget *parent = nullptr);
    ~QT61();
public slots:
    void fun();

private:
    Ui::QT61 *ui;
};

#endif // QT61_H

wihget.h

cpp 复制代码
#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QMessageBox>
#include <QDebug>
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 on_btn1_clicked();

private:
    Ui::Widget *ui;
};
#endif // WIDGET_H

QT61.cpp

cpp 复制代码
#include "qt61.h"
#include "ui_qt61.h"

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

QT61::~QT61()
{
    delete ui;
}
void QT61::fun()
{
    this->show();
}

wihget.cpp

cpp 复制代码
#include "widget.h"
#include "ui_widget.h"

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

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


void Widget::on_btn1_clicked()
{
    if(ui->lineEdit->text()=="12345" && ui->lineEdit_2->text()=="12345");
    {
        QMessageBox msg(QMessageBox::Question,
                        "提示",
                        "登陆成功",
                        QMessageBox::Yes
                        );
        int res =msg.exec();
        if(res==QMessageBox::Yes)
        {
            emit my_signal();
            this->close();
        }
    }

   if(ui->lineEdit->text()!="12345" | ui->lineEdit_2->text()!="12345")
    {
        QMessageBox msg(QMessageBox::Question,
                        "提示",
                        "登陆失败,是否重新登陆",
                        QMessageBox::Yes| QMessageBox::No
                        );
        int sun=msg.exec();
        if(sun==QMessageBox::Yes)
        {
            this->show();
            ui->lineEdit_2->clear();

        }
        else if(sun==QMessageBox::No)
        {
            this->close();
        }
    }


}

main.cpp

cpp 复制代码
#include "widget.h"
#include "qt61.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    QT61 q;
    QObject::connect(&w,&Widget::my_signal,&q,&QT61::fun);
    w.show();
    return a.exec();
}

相关推荐
Geo_V1 小时前
Windows 安装 Anaconda 并配置 PyCharm 环境
ide·windows·python·pycharm
iCxhust4 小时前
windows环境下在Bochs中运行Linux0.12系统
linux·运维·服务器·windows·minix
晟盾科技13 小时前
报表类系统后端API设计思路
开发语言·windows·php
前路不黑暗@19 小时前
Java:继承与多态
java·开发语言·windows·经验分享·笔记·学习·学习方法
酷柚易汛智推官21 小时前
Windows 10 停服下的国产化迁移:统信 UOS 工具核心技术深度解析
windows·操作系统·酷柚易汛
光芒再现dev1 天前
Win10/Win11文件夹图片不能预览怎么解决?
windows
lingggggaaaa1 天前
小迪安全v2023学习笔记(一百四十三讲)—— Win系统权限提升篇&AD内网域控&NetLogon&ADCS&PAC&KDC&CVE漏洞
windows·笔记·学习·安全·内网安全·权限提升
低头不见1 天前
策略模式上下文管理
windows·python·策略模式
电脑小管家1 天前
笔记本蓝牙怎么开启 完整教程
windows·驱动开发·计算机外设·电脑·音频
懒羊羊不懒@1 天前
JavaSe—List集合系列
java·开发语言·数据结构·人工智能·windows