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

相关推荐
满天星83035778 分钟前
【C++】AVL树的模拟实现
开发语言·c++·算法·stl
Mr_WangAndy1 小时前
C++设计模式_行为型模式_责任链模式Chain of Responsibility
c++·设计模式·责任链模式·行为型模式
时间之里1 小时前
【c++】:Lambda 表达式介绍和使用
开发语言·c++
汉克老师2 小时前
GESP2025年9月认证C++四级( 第三部分编程题(1)排兵布阵)
c++·算法·gesp4级·gesp四级
·心猿意码·3 小时前
C++智能指针解析
开发语言·c++
property-3 小时前
C++中#define和const的区别
开发语言·c++
怎么没有名字注册了啊5 小时前
查找成绩(数组实现)
c++·算法
AI+程序员在路上6 小时前
QT6中Combo Box与Combo BoxFont 功能及用法
c++·qt
L_09076 小时前
【Algorithm】Day-4
c++·算法·leetcode
煜3646 小时前
C++异常与智能指针
开发语言·c++