完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示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();
}

相关推荐
小羊没烦恼!5 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
rockmelodies5 天前
# Windows Server2008 R2 Standard(SP1镜像U盘)重置本地管理员密码【完整详细步骤】
windows·密码破解
kakakahahahaha5 天前
Windows C盘空间不足的安全清理与迁移流程
windows·电脑·笔记本电脑·软件需求·c盘清理
做咩啊~5 天前
远程连接提示:身份验证错误,要求的函数不受支持
windows
百事牛科技5 天前
PPT只读怎么取消?四种情况分别处理
windows·powerpoint
熊明才6 天前
WSL2 网络突然瘫痪(Network is unreachable / 没有 eth0)最短修复指南(2026年9月20日亲测可用)
linux·windows·wsl2
xbzb6 天前
Windows 启动故障修复知识整理:蓝屏 / 无限重启 / 盘符 X / 无 PE 盘
windows
我命由我123456 天前
Mac 操作系统 - 一些使用记录
运维·windows·学习·系统安全·运维开发·mac·学习方法
kakakahahahaha7 天前
Windows Steam 游戏存档在哪里?定位和恢复排查流程
windows·其他·电脑·笔记本电脑·内容运营·软件需求
Xy-unu7 天前
Windows 开启外接显示器 HDR 后外接显示器无信号、无法扩展模式故障记录
windows