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

相关推荐
吴可可1231 小时前
CAD2004自定义实体开发环境配置
c++·算法
L_09071 小时前
【C++】C++11 新特性
开发语言·c++
Fanfanaas2 小时前
C++ 继承
java·开发语言·jvm·c++·学习·算法
十五年专注C++开发2 小时前
cereal 库:C++ 序列化的轻量之选
开发语言·c++·序列化·反序列化·cereal
lqqjuly2 小时前
设计模式:理论、架构与 C++ 实现—SOLID原则到23 种经典模式
c++·设计模式·架构
BestOrNothing_20152 小时前
C++零基础到工程实战(5.2.8)多文件声明定义函数和全局变量
c++·c++多文件编译·.h头文件·.cpp·函数声明定义
星卯教育tony2 小时前
2026年全国青少年信息素养大赛主题应用 数字守艺人 丝路新城 星火征程 智传民韵 c++ python scratch 所有真题免费分享
开发语言·c++
basketball6163 小时前
C++ bitset 头文件完全指南
开发语言·c++
散峰而望3 小时前
【算法练习】算法练习精选:陶陶摘苹果(基础+升级)、Music Notes、字串变换,你能AC几道?
数据结构·c++·算法·leetcode·贪心算法·github·动态规划
誰能久伴不乏3 小时前
libmodbus 在 Windows 环境下报 “Invalid argument“ 的排错记录
c++·qt·modbus