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

相关推荐
wregjru8 分钟前
【QT】4.QWidget控件(2)
c++
浅念-13 分钟前
C++入门(2)
开发语言·c++·经验分享·笔记·学习
小羊不会打字21 分钟前
CANN 生态中的跨框架兼容桥梁:`onnx-adapter` 项目实现无缝模型迁移
c++·深度学习
Max_uuc30 分钟前
【C++ 硬核】打破嵌入式 STL 禁忌:利用 std::pmr 在“栈”上运行 std::vector
开发语言·jvm·c++
近津薪荼32 分钟前
dfs专题4——二叉树的深搜(验证二叉搜索树)
c++·学习·算法·深度优先
艾莉丝努力练剑1 小时前
【Linux:文件】Ext系列文件系统(初阶)
大数据·linux·运维·服务器·c++·人工智能·算法
Once_day1 小时前
C++之《程序员自我修养》读书总结(1)
c语言·开发语言·c++·程序员自我修养
Trouvaille ~2 小时前
【Linux】TCP Socket编程实战(一):API详解与单连接Echo Server
linux·运维·服务器·网络·c++·tcp/ip·socket
坚果派·白晓明2 小时前
在鸿蒙设备上快速验证由lycium工具快速交叉编译的C/C++三方库
c语言·c++·harmonyos·鸿蒙·编程语言·openharmony·三方库
小镇敲码人2 小时前
深入剖析华为CANN框架下的Ops-CV仓库:从入门到实战指南
c++·python·华为·cann