qt day1

1.应用场景实现一个登录窗口界面。

代码实现:

cpp 复制代码
#include "mywidget.h"

MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)
{
//1.-----------创建一个窗口-------------//
    //设置纯净窗口
    this->setWindowFlag(Qt::FramelessWindowHint);
    //设置窗口图标
    this->setWindowIcon(QIcon("C:\\Users\\18225\\Desktop\\picture\\logo"));
    //设置窗口颜色
    this->setStyleSheet("background-color:rgb(18,18,18)");
    //设置大小
    this->resize(340,600);
    //设置窗口固定大小
    this->setFixedSize(340,600);

//2.-----------设置背景版-------------//
    //实例化一个标签类
    QLabel *lab1 = new QLabel(this);  //指向父类
    //这是标签(背景板)大小
    lab1->resize(340,240);
    //设置背景版颜色
    lab1->setStyleSheet("background-color:rgb(18,18,18)");
    //将动图加载到窗口内
    QMovie *mv = new QMovie("C:\\Users\\18225\\Desktop\\picture\\spo.gif");
    //将动图设置到标签中
    lab1->setMovie(mv);
    //启动动图
    mv->start();
    //将动图设置自适应标签大小
    lab1->setScaledContents(true);

    //为标签设置文本
    QLabel *lab2 = new QLabel(this);
    lab2->resize(35,40);
    lab2->move(160,500);
    lab2->setText("登录");
    lab2->setStyleSheet("background-color:rgb(255,255,255)");
    lab2->setStyleSheet("color:white");

    QLabel *lab3 = new QLabel(this);
    lab3->move(75,200);
    lab3->resize(200,50);
    lab3->setText("通过Spotify,免费畅听百万歌曲。");
    lab3->setStyleSheet("background-color:rgb(255,255,255)");
    lab3->setStyleSheet("color:white");


//    QLabel *lab4 = new QLabel(this);
//    lab4->move(10,355);
//    lab4->resize(35,40);
//    lab4->setPixmap(QPixmap("C:\\Users\\18225\\Desktop\\picture\\gogo"));
//    lab4->setScaledContents(true);


//3.-----------设置按钮-------------//
    QPushButton *btn1 = new QPushButton("免费注册",this);
    btn1->move(20,300);
    btn1->resize(300,50);
    btn1->setStyleSheet("background-color:rgb(30,215,96);border-radius:20px;color:black");

    QPushButton *btn2 = new QPushButton("使用 Google 账号继续",this);
    btn2->move(20,360);
    btn2->resize(300,50);
    btn2->setStyleSheet("background-color:#000000;border-radius:20px;color:white");

    QPushButton *btn3 = new QPushButton("使用 Facebook 账号继续",this);
    btn3->move(20,420);
    btn3->resize(300,50);
    btn3->setStyleSheet("background-color:#000000;border-radius:20px;color:white");

}

MyWidget::~MyWidget()
{
}

效果:

相关推荐
旖旎夜光38 分钟前
【C++ 基础入门】C++多态(下):单/多继承虚表、多态补充与 21 道高频题
开发语言·c++·笔记·学习
apcipot_rain11 小时前
C++转Java日记(03)
java·开发语言·c++
布莱克60511 小时前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map
xys_67811 小时前
深挖C++:类和对象(中)
开发语言·c++
MOONICK13 小时前
QT元数据
开发语言·qt
D e re k ZH14 小时前
C++ 系统学习手记:从语法细节到工程实践
开发语言·数据结构·c++·算法
xiaoye-duck15 小时前
《C++ 项目:手写大模型接入 SDK》Ollama接口设计(上):初始化、全量响应实现和测试
开发语言·网络·c++·语言模型
zaizai100715 小时前
【Effective Modern C++】学习第一章
c++
Fruiticecake16 小时前
C 程序员速通现代 C++(一):lambda、std::function、移动语义与智能指针
c语言·c++
青少儿编程课堂16 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:中缀表达式求值解析
c++·python·算法·bfs·信息学竞赛