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

6.17作业

升级优化自己应用程序的登录界面。

要求: 1. qss实现

2. 需要有图层的叠加 (QFrame)

3. 设置纯净窗口后,有关闭等窗口功能。

4. 如果账号密码正确,则实现登录界面关闭,另一个应用界面显示。

//发送端头文件#ifndef MYWIDGET_H
#define MYWIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE
namespace Ui { class MyWidget; }
QT_END_NAMESPACEclass MyWidget : public QWidget
{Q_OBJECTpublic:MyWidget(QWidget *parent = nullptr);~MyWidget();private slots:void on_pushButton_clicked();void on_pushButton_2_clicked();void on_pushButton_3_clicked();void on_pushButton_4_clicked();signals:void my_signal_1();void my_signal_2();void my_jump();private:Ui::MyWidget *ui;QPalette color;
};
#endif // MYWIDGET_H//发送端源文件#include "mywidget.h"
#include "ui_mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent), ui(new Ui::MyWidget)
{ui->setupUi(this);this->setWindowFlag(Qt::FramelessWindowHint);this->setAttribute(Qt::WA_TranslucentBackground);connect(this,&MyWidget::my_signal_1,[=](){this->showMinimized();});connect(this,&MyWidget::my_signal_2,[=](){if(this->window()->isMaximized()){this->showNormal();}else{this->showMaximized();}});
}MyWidget::~MyWidget()
{delete ui;
}void MyWidget::on_pushButton_clicked()
{if(ui->Username->text() == "admin" && ui->Passwd->text() == "123456"){this->close();emit my_jump();}else{ui->Username->setText("账号或密码不正确!");ui->Passwd->clear();}
}void MyWidget::on_pushButton_2_clicked()
{this->close();
}void MyWidget::on_pushButton_3_clicked()
{emit my_signal_1();
}void MyWidget::on_pushButton_4_clicked()
{emit my_signal_2();
}//接收端头文件#ifndef SECOND_H
#define SECOND_H#include <QWidget>
#include <QMovie>namespace Ui {
class Second;
}class Second : public QWidget
{Q_OBJECTpublic:explicit Second(QWidget *parent = nullptr);~Second();public slots:void jump_slot();private:Ui::Second *ui;
};#endif // SECOND_H//接收端源文件#include "second.h"
#include "ui_second.h"Second::Second(QWidget *parent) :QWidget(parent),ui(new Ui::Second)
{ui->setupUi(this);
}Second::~Second()
{delete ui;
}void Second::jump_slot()
{QMovie *mv = new QMovie(":/e043-iquxrui6424394.gif");ui->label->setMovie(mv);mv->start();ui->label->setScaledContents(1);this->show();
}//主函数#include "mywidget.h"
#include "second.h"#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);MyWidget w;w.show();Second s;QObject::connect(&w,&MyWidget::my_jump,&s,&Second::jump_slot);return a.exec();
}

相关文章:

  • Spring Boot高级配置与自定义Starter详解
  • 哪个充电宝牌子好用又实惠?盘点四大平价充电宝分享
  • YOLOv10涨点改进:改进检测头(Partial_C_v10Detect)检测头结构创新,实现涨点
  • 微信小程序录音机源代码
  • 中标新领域!亚信科技+用友网络,将助力广西某市城投集团玩转“人事”
  • 【Linux】版本
  • MySQL中的一行记录是怎么存储的
  • 【QT5】<重点> QT串口编程
  • Java 和 Kotlin Lambda 表达式详解
  • vue简介实例
  • 第二十七章HTML.CSS综合案例(三)
  • react中useEffect函数的详细用法
  • Unity3D MMORPG加载背包配置表详解
  • C#中数组ProtoBuf使用问题
  • c# 二维图形绘制实践
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • Centos6.8 使用rpm安装mysql5.7
  • django开发-定时任务的使用
  • iOS编译提示和导航提示
  • Java Agent 学习笔记
  • Java精华积累:初学者都应该搞懂的问题
  • PaddlePaddle-GitHub的正确打开姿势
  • pdf文件如何在线转换为jpg图片
  • PHP那些事儿
  • Promise初体验
  • 程序员该如何有效的找工作?
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 使用API自动生成工具优化前端工作流
  • 移动端高清、多屏适配方案
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • #职场发展#其他
  • %check_box% in rails :coditions={:has_many , :through}
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (3)nginx 配置(nginx.conf)
  • (C11) 泛型表达式
  • (笔记)M1使用hombrew安装qemu
  • (含笔试题)深度解析数据在内存中的存储
  • (亲测有效)推荐2024最新的免费漫画软件app,无广告,聚合全网资源!
  • (四)软件性能测试
  • (杂交版)植物大战僵尸
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (最全解法)输入一个整数,输出该数二进制表示中1的个数。
  • .NET Framework .NET Core与 .NET 的区别
  • .NET IoC 容器(三)Autofac
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件)
  • .NET和.COM和.CN域名区别
  • @ohos.systemParameterEnhance系统参数接口调用:控制设备硬件(执行shell命令方式)
  • @RequestMapping用法详解
  • [ vulhub漏洞复现篇 ] Apache Flink目录遍历(CVE-2020-17519)
  • [<死锁专题>]
  • [000-01-018].第3节:Linux环境下ElasticSearch环境搭建
  • [10] CUDA程序性能的提升 与 流
  • [20170705]diff比较执行结果的内容.txt
  • [AI]文心一言出圈的同时,NLP处理下的ChatGPT-4.5最新资讯
  • [Algorithm][综合训练][拜访][买卖股票的最好时机(四)]详细讲解