2023/12/11 作业

news2024/12/28 19:18:15

1.思维导图

2.作业

成果:

第一个头文件

#ifndef TEST3GET_H
#define TEST3GET_H
 
#include <QWidget>
#include<QMessageBox>
QT_BEGIN_NAMESPACE
namespace Ui { class test3get; }
QT_END_NAMESPACE
 
class test3get : public QWidget
{
    Q_OBJECT
 
public:
    test3get(QWidget *parent = nullptr);
    ~test3get();
    //声明信号函数
signals:
    void my_signal();
    //声明槽函数
private slots:
    void on_pushButton_clicked();
 
private:
    Ui::test3get *ui;
};
#endif // TEST3GET_H

========================================================================

第二个头文件

#ifndef SENCEND_H
#define SENCEND_H
 
#include <QWidget>
#include<QPushButton>
namespace Ui {
class sencend;
}
 
class sencend : public QWidget
{
    Q_OBJECT
 
public:
    explicit sencend(QWidget *parent = nullptr);
    ~sencend();
 
private:
    Ui::sencend *ui;
//声明信号函数
signals:
void  mysignal();
//声明槽函数
public slots:
    void s_slots();
    void  my_slots();
};
 
#endif // SENCEND_H
=======================================================================================

第一个实现文件

#include "test3get.h"
#include "ui_test3get.h"
 
test3get::test3get(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::test3get)
{
    //关闭画面头
this->setWindowFlag(Qt::FramelessWindowHint);
 
    this->setAttribute(Qt::WA_TranslucentBackground);
    ui->setupUi(this);
}
 
test3get::~test3get()
{
    delete ui;
}
 
//建立槽函数
void test3get::on_pushButton_clicked()
{
    //判断用户名和密码是否正确
    if(ui->username->text()=="addmin"&&ui->password->text()=="123456")
    {
//建立一个接收值
    int res;
    //建立属性对话框
       QMessageBox msg(
                   //是否有图标
        QMessageBox::NoIcon,
    //信息头
         "信息内容",
                   //信息内容
          "登录成功",
                   //按钮
          QMessageBox::Ok|QMessageBox::No,
                   //指定父组件
                this
    );
       //弹出对话框
   res=msg.exec();
   //点击判断是否为ok
   if(res==QMessageBox::Ok)
   {
       //关闭挡墙页面
     this->close();
       //并发送一个信号函数让其他槽函数接收到
       emit my_signal();
 
   }
    }
    else{
        //静态成员对话框
          int res=QMessageBox::question(
                      //父组件
                     this,
                      //对话框信息头
                      "消息内容",
                      //对话框信息内容
                      "用户名或密码错误",
                      //按钮yes/no
                      QMessageBox::Yes|QMessageBox::No
                     );
          //点击yes
          if(res==QMessageBox::Yes)
          {
             // 清空username
              this->ui->username->clear();
              //清空password
              this->ui->password->clear();
              //点击no就关闭窗口
          }else  if(res==QMessageBox::No){
              //关闭窗口
              this->close();
          }
    }
}
=======================================================================================

第二个实现文件

#include "sencend.h"
#include "ui_sencend.h"
 
sencend::sencend(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::sencend)
{
    ui->setupUi(this);
    //删除页面头
    this->setWindowFlag(Qt::FramelessWindowHint);
}
 
sencend::~sencend()
{
    delete ui;
}
 
void sencend::s_slots()
{
    //生成第二个页面
   this->show();
    //点击exit退出
    connect(ui->exit,&QPushButton::clicked,this,&sencend::my_slots);
}
//exit退出
void sencend::my_slots()
{
//关闭sencend页面
    this->close();
}
=======================================================================================

main函数

#include "test3get.h"
#include "sencend.h"
#include <QApplication>
 
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    test3get w;
 
    w.show();
    //建立一个sencend对象
    sencend s;
    //按钮实现形成两个页面的切换
    QObject::connect(&w,&test3get::my_signal,&s,&sencend::s_slots);
    return a.exec();
}
=======================================================================================

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1304307.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用docker创建jmeter容器,如何实现性能测试?

用 docker 创建 jmeter 容器, 实现性能测试 我们都知道&#xff0c;jmeter可以做接口测试&#xff0c;也可以用于性能测试&#xff0c;现在企业中性能测试也大多使用jmeter。docker是最近这些年流行起来的容器部署工具&#xff0c;可以创建一个容器&#xff0c;然后把项目放到…

chrome浏览器使用flash player

今天用chrome打开学校校园网&#xff0c;显示不出来成绩单提示如下&#xff1a; 结果下了也没用。 Chrome浏览器在2020年12月已经停止支持Flash Player插件&#xff0c;所以无法在Chrome浏览器上使用Flash Player。 使用其他浏览器 如果之前安装了Flash Player插件的小伙伴&…

多维时序 | MATLAB实现SAO-CNN-BiGRU-Multihead-Attention多头注意力机制多变量时间序列预测

多维时序 | MATLAB实现SAO-CNN-BiGRU-Multihead-Attention多头注意力机制多变量时间序列预测 目录 多维时序 | MATLAB实现SAO-CNN-BiGRU-Multihead-Attention多头注意力机制多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现SAO-CNN-B…

关于引用unpkg.com的mars3d相关依赖文件报错无法请求的说明

问题来源&#xff1a; 1.关于引用unpkg.com的mars3d相关依赖文件报错无法请求的说明 说明&#xff1a; 1.最近npm、unpkeg都访问异常&#xff0c;可能是unpkg.com等国外的服务器不稳定导致的请求未响应。 解决方案&#xff1a; 1.请切换静态文件引入的方式请求相关资源。参…

Science Robotics 挖掘机升级智能机器人,充分使用当地材料自主搭建石墙和土墙

建筑业对人类生产力至关重要&#xff0c;但需要实质性创新来满足不断增长的需求并减少其对环境的严重影响。建筑业是世界上最大的经济部门之一&#xff0c;占全球国内生产总值的13%。推而广之&#xff0c;它几乎是所有其他行业的重要组成部分&#xff1a;建筑业负责运输和农业基…

定时补偿方案

1&#xff1a;需求描述 支持NVR升级后通道数变更&#xff0c;完成升级后&#xff0c;设备SDK上报通道数量给A平台&#xff0c;A平台将NVR通道数量同步给B平台&#xff0c;B平台自动调用C平台接口&#xff0c;同步通道数量给C平台&#xff0c;C平台重新生成通道序列号&#xff…

PHP 之道(PHP The Right Way 中文版)

PHP 之道&#xff08;PHP The Right Way 中文版&#xff09;

HeartBeat监控Mysql状态

目录 一、概述 二、 安装部署 三、配置 四、启动服务 五、查看数据 一、概述 使用heartbeat可以实现在kibana界面对 Mysql 服务存活状态进行观察&#xff0c;如有必要&#xff0c;也可在服务宕机后立即向相关人员发送邮件通知 二、 安装部署 参照章节&#xff1a;监控组件…

液态二氧化碳储存罐远程无线监测系统

二氧化碳强化石油开采技术&#xff0c;须先深入了解石油储层的地质特征和二氧化碳的作用机制。现场有8辆二氧化碳罐装车&#xff0c;每辆罐车上有4台液态二氧化碳储罐&#xff0c;每台罐的尾部都装有一台西门子S7-200 smart PLC。在注入二氧化碳的过程中&#xff0c;中控室S7-1…

租一台服务器多少钱决定服务器的价格因素有哪些

租一台服务器多少钱决定服务器的价格因素有哪些 大家好我是艾西&#xff0c;服务器这个名词对于不从业网络行业的人们看说肯定还是比较陌生的。在21世纪这个时代发展迅速的年代服务器在现实生活中是不可缺少的一环&#xff0c;平时大家上网浏览自己想要查询的信息等都是需要服…

terser

环境&#xff1a; 一、使用vueCli创建的项目的vue.config.js 添加terser配置 验证了在打包后生成的.js文件中确实没有了console.log() 这里的.js.map可以省略&#xff0c;公司里代码打包后就没有.js.map文件了 要配置下除去.js.map文件或者统一分到.map文件夹里 二、vite 安…

抓紧收藏!软考个税抵扣3600元详细操作流程

软考证书有很多项福利政策&#xff0c;“个税补贴 ”是很容易被忽略的一项&#xff0c;但其实这一项也是实打实的资金补贴。 持有软考证书可在线上申请&#xff0c;按照3600定额扣除。 具体操作流程&#xff0c;接下来详细说明。 01 政策依据 根据《个人所得税专项附加扣除暂…

极兔速递查询,极兔速递单号查询,筛选出指定派件员的单号

批量查询极兔速递单号的物流信息&#xff0c;并将指定派件员的单号筛选出来。 所需工具&#xff1a; 一个【快递批量查询高手】软件 极兔速递单号若干 操作步骤&#xff1a; 步骤1&#xff1a;运行【快递批量查询高手】软件&#xff0c;第一次使用的朋友记得先注册&#xff…

ThreadLocal 本地线程变量详解

概述 ThreadLocal 意为本地线程变量&#xff0c;即该变量只属于当前线程&#xff0c;对其他线程隔离 我们知道&#xff0c;一个普通变量如果被多线程访问会存在存在线程安全问题&#xff0c;这时我们可以使用 Synchronize 来保证该变量某一时刻只能有一个线程访问&#xff0c…

vector类

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;熟悉vector库 > 毒鸡汤&#xff1a;从人生低谷…

2-1基础算法-枚举/模拟

文章目录 1.枚举2.模拟 1.枚举 [例1] 特别数的和 评测系统 #include <iostream> using namespace std; bool pa(int x) {while (x) {if (x % 10 2 || x % 10 1 || x % 10 0 || x % 10 9) {return true;}else {x x / 10;}}return false; } int main() {int sum0;i…

设计模式——建造者模式(创建型)

引言 生成器模式是一种创建型设计模式&#xff0c; 使你能够分步骤创建复杂对象。 该模式允许你使用相同的创建代码生成不同类型和形式的对象。 问题 假设有这样一个复杂对象&#xff0c; 在对其进行构造时需要对诸多成员变量和嵌套对象进行繁复的初始化工作。 这些初始化代码…

育儿类App最佳广告变现方案及运营增长攻略 | TopOn变现干货

近年来&#xff0c;随着全球母婴、亲子及育儿产品的快速发展&#xff0c;移动互联网育儿App迎来了一次井喷式的发展&#xff0c;儿童数字广告支出成为了增长速度最快的细分市场。TopOn联合全球儿童安全广告平台Kidoz举办了一场线上分享会——育儿类App最佳变现解决方案及广告变…

算法——位运算

常见位运算总结 基础位运算 << >> ~与&&#xff1a;有0就是0或|&#xff1a;有1就是1异或^&#xff1a;相同为0&#xff0c;相异为1 / 无进位相加 给一个数n&#xff0c;确定他的二进制表示中的第x位是0还是1 让第x位与上1即可先让n右移x位&上一个1&#…

Docker入门安装gerrit软件

Windows上运行docker 什么是Docker Desktop docker desktop是Docker在Windows 10和macOS操作系统上的官方安装方式&#xff0c;这个方法依然属于先在 Windows 上部署 Docker 的方法都是先安装一个虚拟机&#xff0c;并在安装 Linux 系统的的虚拟机中运行 Docker。 开启Hyper-…