QT:当登录成功时,关闭登录界面,跳转到新的界面中

这篇具有很好参考价值的文章主要介绍了QT:当登录成功时,关闭登录界面,跳转到新的界面中。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1> 继续完善登录框,当登录成功时,关闭登录界面,跳转到新的界面中

widget.h

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

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    //, ui(new Ui::Widget)
{
    //ui->setupUi(this);
    this->setFixedSize(800,650);   //设置固定尺寸
    qDebug()<<this->windowTitle();   //获取窗口标题
    this->setWindowTitle("英雄去超越");
    this->setWindowOpacity(0.9);

    //5.设置窗口图标
    this->setWindowIcon(QIcon(":/icon/yxlm.png"));

    //设置大图
    lab1 = new QLabel(this);
    lab1->resize(800,380);
    lab1->setPixmap(QPixmap(":/icon/logo.png"));
    lab1->setScaledContents(true);

    //使用无参构造函数,构造出一个按钮
    btn1 = new QPushButton;
    btn1->setParent(this);  //将当前界面设置成父组件
    btn1->setText("登录");  //设置按钮上的文本内容
    btn1->resize(80,40);        //重新设置组件的大小
    btn1->move(500,550);         //移动组件
    btn1->setStyleSheet("background-color:cyan;");//设置样式表
    btn1->setIcon(QIcon(":/icon/2.png"));

    btn2 = new QPushButton(this);
    btn2->setText("取消");  //设置按钮上的文本内容
    btn2->resize(80,40);        //重新设置组件的大小
    btn2->move(600,550);         //移动组件
    btn2->setStyleSheet("background-color:skyblue;");//设置样式表
    btn2->setIcon(QIcon(":/icon/1.png"));

    edit1 = new QLineEdit;
    edit1->setParent(this);
    edit1->resize(300,40);
    edit1-> move(250,450);
    edit1->setEchoMode((QLineEdit::Password));
    edit1->setPlaceholderText("密码");

    edit2 = new QLineEdit(this);
    edit2->resize(300,40);
    edit2-> move(250,400);
    edit2->setPlaceholderText("账号");

    lab2 = new QLabel;
    lab2->setParent(this);
    lab2->setText("账号");
    lab2->resize(50,50);
    lab2->move(200,400);

    lab3 = new QLabel(this);
    lab3->setText("密码");
    lab3->resize(50,50);
    lab3->move(200,450);

    connect(btn1,SIGNAL(clicked()),this,SLOT(btn1_slot()));

    //qt5
    connect(btn2,&QPushButton::clicked,this,&Widget::btn2_slot);


    //将自定义的信号与槽函数进行连接
    connect(this,&Widget::my_signal,[&](){
        qDebug()<<"我已经成功连接取消按钮";
        btn2->resize(btn2->width()+1,btn2->height()+1);
    });

    //将同一个信号连接到同一个槽
    //connect(this,&Widget::my_signal,this,&Widget::close);

}

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

void Widget::my_slot()
{
    this->close();
}

void Widget::btn1_slot()
{
    QString userName = edit2->text();
    QString pwd =  edit1->text();

    if(userName == "admin" && pwd == "123456" )
    {
        qDebug()<<"登录成功";
        this->close();
        emit jump();
        this->close();
    }else
    {
        qDebug()<<"登录失败,请重新登录";
        edit1->clear();
    }
}

void Widget::btn2_slot()
{
    static int num = 0;
    qDebug()<<++num;

    //发射自定义的信号
    emit my_signal();
}

2> 新建一个工程文件,将默认提供的代码加上注释信息

工程管理文件.pro

QT       += core gui
#表示引入qt所需的类库,如核心库、图形化界面库

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
#如果超过4.0版本,系统会自动加上widgets库

CONFIG += c++11
#该版本的qt支持c++11后的语法

# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

#管理源文件
SOURCES += \
    main.cpp \
    widget.cpp

#管理头文件
HEADERS += \
    widget.h

#管理ui文件
FORMS += \
    widget.ui

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

3> 思维导图

QT:当登录成功时,关闭登录界面,跳转到新的界面中,qt,开发语言

 文章来源地址https://www.toymoban.com/news/detail-610595.html

到了这里,关于QT:当登录成功时,关闭登录界面,跳转到新的界面中的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • QT调用不同UI界面响应,对话框跳转到主页面UI,用信号与槽传递信息,两级信号传递

    在MainWindow界面有一个按键”新建”,点击后需要生成一个输入对话框,实例用到了processDialog类对象。 我新建一行数据完成后,需要更新MainWindow表格的视图,此时就需要调用写在MainWIndow下的函数MainWindow::showProcess(vectorPCB* readyQueue) 但是如果实例化一个MainWidow对象,此时修改的

    2024年02月12日
    浏览(52)
  • unity学习(30)——跳转到角色选择界面(跳转新场景)

    1.在scene文件夹中([siːn]),右键-create-scene,名字叫SelectMenu(选择角色场景)。 2.把新建场景拖拽到hierarchy[ˈhaɪərɑːki]中。 3.此时才能在file-build setting中Add open scene,这三步的顺序不能颠倒。右边 0 1的编号是可以相互拖拽交换的。 4.想要完成跳转需要用到一个全新的函数

    2024年02月22日
    浏览(47)
  • Vue实现未登录跳转到登录页

    1、登录页登录成功时将服务端返回的标识存放起来 2、在router中给不需要登录的页面设置 meta : { auth : false },如首页  3、使用路由前置守卫beforEach,由于给路由设置了meta : { auth : false },如果是符合该属性时则不需要跳转登录页  4、接下来根据token是否存入到 localstorage 来进

    2024年02月06日
    浏览(40)
  • Android从一个App界面跳转到另一个App界面

    Android从一个App界面跳转到另一个App界面 首先,将需要的要跳转的App的activity暴露出来 需要注意的是,如果不暴露,就会报错 然后在需要进行跳转的地方写如下代码 显示启动 1 常见 2 通过Intent的ComponentName: 3 初始化Intent时指定包名: 隐式启动 通过Intent-filter的Action,Category或

    2024年02月16日
    浏览(48)
  • unity学习(32)——跳转到角色选择界面(父子类问题)

     新问题 应该是两个脚本之间缺少继承关系 its children 解决起来很简单,把ResceneScript也绑到canvas上就可以了 。 此时,在账号密码正确的情况下,是可以完成场景切换。  对应的代码如下: 切换完场景其实也就完成了完整的异步操作!

    2024年02月21日
    浏览(43)
  • IdentityServer密码长度超长会导致跳转到登录页

    应用系统项目的安全要求越来越高,基本都是采取https等加密证书传输,无法使用https的,也是要求不能明文传输内容,因此做一些等保要求,密码需要加密后才能传输给服务端,所以前端会采取一些密码手段,保证一定的安全性。 项目集成的IdentityServer3实现账户和密码登录

    2024年02月10日
    浏览(31)
  • HTML实现登录后跳转到指定页面,不回退

    最近开发页面,需要实现登录功能,成功后跳转到指定页面,之前尝试了好几种页面被跳转方法,但是都失败了,好在最终成功跳转,且浏览器不会后退,所以来记录一下: 最开始我使用的是window.location.href=\\\" http://localhost:8080 \\\",虽然能成功跳转到指定页面,但是点击浏览器回

    2024年02月12日
    浏览(61)
  • 配置vue项目启动后自动打开浏览器,出现网址跳转错误问题:网址为http://0.0.0.0:8080/ 的页面可能存在问题,或者已永久移动到新的网址。

    我们在Vue项目package.js文件里配置启动后启动后自动打开浏览器时,也就是加上–open 会出现以下问题: 解决方法: 在vue.config.js文件里做修改:

    2024年02月11日
    浏览(56)
  • 若依:如何去掉首页,设置登录后跳转到第一个路由菜单

    若依系统是一个很好用的,开源的前端后台管理系统。 最近公司有一个需求,需要把默认的首页隐藏,登录后直接跳转到路由菜单返回的第一个页面。 查找了不少资料,但是都没有实际的解决方案。  不过最好自己还是实现了这个功能。 步骤如下: 1、首先应当找到项目里

    2023年04月09日
    浏览(202)
  • Xamarin.Android | 界面跳转到手机自带的自启动管理界面,引导用户将APP加入自启动

    很多 Android 应用需要在后台运行,以便提供实时通知、定时任务等服务,但是部分 Android 系统通过限制应用程序后台运行,以降低电池消耗和提高系统性能。这就可能导致应用程序运行不稳定,通知延迟,定时任务无法正常执行等问题。因此,在某些情况下,将应用程序添加

    2024年02月16日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包