当前位置: 首页 > article >正文

12.28作业

1、xmind:

2、在登录界面的登录取消按钮进行以下设置:使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数将登录按钮使用at5版本的连接到自定义的槽函数中,在槽函数中判断ui界面上输入的账号是否为"admin",密码是否为"123456",如果账号密码匹配成功,则输出“登录成功”,并关闭该界面,弹出另一个界面。如果匹配失败,则输出登录失败,并将密码框中的内容清空

widget.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QDebug>

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

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

public slots:
    void my_slot1();
    void btn1_slot1();

signals:
    void my_signal1();//1、声明信号


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

two.h

#ifndef TWO_H
#define TWO_H

#include <QWidget>

namespace Ui {
class two;
}

class two : public QWidget
{
    Q_OBJECT

public:
    explicit two(QWidget *parent = nullptr);
    ~two();

public slots:
    void btn1_slot();//2、声明槽函数

private:
    Ui::two *ui;
};

#endif // TWO_H

widget.cpp

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

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    //qt4连接取消按钮
    connect(ui->btn2,SIGNAL(clicked()),this,SLOT(my_slot1()));
    //qt5连接登录按钮3
    connect(ui->btn1,&QPushButton::clicked,this,&Widget::btn1_slot1);
}

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

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

void Widget::btn1_slot1()
{
    if(ui->lineEdit->text()=="admin"&&ui->lineEdit_2->text()=="123456")
    {
        qDebug()<<"登录成功";
        this->close();
        emit my_signal1();
    }
    else
    {
        qDebug()<<"登录失败";
        ui->lineEdit_2->setText(NULL);
    }
}


two.cpp

#include "two.h"
#include "ui_two.h"

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

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

void two::btn1_slot()
{
    this->show();
}

main.cpp

#include "widget.h"
#include "two.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();

    two t;
    QObject::connect(&w,&Widget::my_signal1,&t,&two::btn1_slot);


    return a.exec();
}

12.28


http://www.kler.cn/a/457311.html

相关文章:

  • CPT203 Software Engineering 软件工程 Pt.5 软件测试(中英双语)
  • 数据结构与算法之动态规划: LeetCode 72. 编辑距离 (Ts版)
  • QT + FFMPEG实现简易播放器
  • (一)开发环境搭建以及配置
  • 在K8S中,节点状态哪个组件负责上报?
  • word中插入zotero引用
  • Etcd静态分布式集群搭建
  • 深度学习在数据库运维中的作用与实现
  • 解决GPT公式复制到Word之后乱码问题
  • SPI机制
  • YOLO11全解析:从原理到实战,全流程体验下一代目标检测
  • Spring Boot使用多线程
  • JVM(Java虚拟机)的组成部分详解
  • Redis 在小型项目中的实战运用
  • 单纯形法Simplex Method
  • 零跑汽车一路狂飙
  • 基于Qt的qss登录界面优化
  • 深入解析Spring Boot中的@ConfigurationProperties注解
  • 深入理解 LeetCode 978:最长湍流子数组
  • FPGA随记---时序约束
  • API安全学习笔记
  • QML学习(三) QML 的基本语法介绍
  • Yocto 项目中的交叉编译:原理与实例
  • 若依整合 Gitee 登录
  • BGP路由常用的属性
  • C语言-详细讲解-给定数字n,生成共有n个括号的所有正确的形式