6.17 作业

使用qt实现优化自己的登录界面

要求: 1. qss实现

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

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

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

第一个源文件

cpp 复制代码
#include "widget.h"
#include "ui_widget.h"

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

    //去掉头部
    this->setWindowFlag(Qt::FramelessWindowHint);
    //去掉空白部分
    this->setAttribute(Qt::WA_TranslucentBackground);

}

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


void Widget::on_pushButton_2_clicked()
{
    this->close();//点击x后 关闭窗口
}

void Widget::on_pushButton_3_clicked()
{
    this->showMinimized();//最小化界面
}

void Widget::on_pushButton_clicked()
{
    if(ui->lineEdit->text() != "abcd" || ui->lineEdit_2->text() != "123456")
        {
            QMessageBox::warning(this,"登录错误","登录失败,请重新输入");
        }
    else
        {
            this->close();//点击登录按钮后  关闭窗口
            emit my_sig();//触发信号进入另外一个窗口
        }

}

第二个源文件

cpp 复制代码
#include "second.h"
#include "ui_second.h"

Second::Second(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Second)
{
    ui->setupUi(this);
    //去掉头部
    this->setWindowFlag(Qt::FramelessWindowHint);
    //去掉空白部分
    this->setAttribute(Qt::WA_TranslucentBackground);
}

Second::~Second()
{
    delete ui;
}
void Second::sig_slots()
{
    this->show();
}

void Second::on_pushButton_clicked()
{
    this->close();
}

实现的效果视频

屏幕录制 2024-06-17 193033

相关推荐
Elias不吃糖12 分钟前
eventfd 初认识Reactor/多线程服务器的关键唤醒机制
linux·服务器·c++·学习
南方的狮子先生21 分钟前
【C++】C++文件读写
java·开发语言·数据结构·c++·算法·1024程序员节
玖剹1 小时前
二叉树递归题目(一)
c语言·c++·算法·leetcode
mjhcsp1 小时前
C++ 数组:基础与进阶全解析
开发语言·c++
量子炒饭大师1 小时前
【一天一个计算机知识】—— 【编程百度】翻译环境与运行环境
c语言·汇编·c++·gitee·机器翻译
今晚打老虎1 小时前
c++(斗罗大陆3)
开发语言·c++·斗罗大陆3
coderxiaohan2 小时前
List列表
c++
无双@2 小时前
高并发内存池9 —— Page Cache 回收
c++·线程·秋招·项目·高并发内存池·c++项目·内存池
卡提西亚3 小时前
C++笔记-26-类模板
c++·笔记
沐怡旸3 小时前
【穿越Effective C++】条款19:设计class犹如设计type——用户定义类型的艺术与科学
c++·面试