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()
{
}

效果:

相关推荐
fakerth4 分钟前
【OpenHarmony】设计模式模块详解
c++·单例模式·设计模式·openharmony
biter down23 分钟前
C++ 解决海量数据 TopK 问题:小根堆高效解法
c++·算法
程芯带你刷C语言简单算法题36 分钟前
Day28~实现strlen、strcpy、strncpy、strcat、strncat
c语言·c++·算法·c
Stone_OverLooking41 分钟前
Qt6.5.3 mingw64 Ninja编译oracle oci驱动
数据库·qt·oracle
一个不知名程序员www1 小时前
算法学习入门--- 树(C++)
c++·算法
Simon席玉1 小时前
C++的命名重整
开发语言·c++·华为·harmonyos·arkts
仰泳的熊猫1 小时前
1148 Werewolf - Simple Version
数据结构·c++·算法·pat考试
十五年专注C++开发1 小时前
同一线程有两个boost::asio::io_context可以吗?
c++·boost·asio·异步编程·io_context
xlq223222 小时前
26 avl树(下)
c++
郝学胜-神的一滴2 小时前
深入理解OpenGL VBO:原理、封装与性能优化
c++·程序人生·性能优化·图形渲染