day1 QT

作业

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

MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)
{
    //设置窗口大小
    this->resize(1025,533);
    //固定窗口大小
    this->setFixedSize(1025,533);
    //设置窗口背景色,设置弧度
    //this->setStyleSheet("background-image:url(E:/QT/Qt/pictrue/Milk.png);");
    //隐藏栏目头
    this->setWindowFlag(Qt::FramelessWindowHint);


    //提示标签1
    QLabel *labe1 = new QLabel("密码登录",this);
    //设置位置
    labe1->move(500,70);
    //设置长宽
    labe1->resize(120,50);
    //设置字体大小
    //labe1->setStyleSheet("background-color:rgb(76,162,229);");
    // 创建 QFont 实例,设置字体大小
    QFont font = labe1->font();
    font.setPointSize(16);  // 设置字体大小为 16 点

    // 应用字体设置到 QLabel
    labe1->setFont(font);



    //提示标签2
    QLabel *labe2 = new QLabel("短信登录",this);
    //设置位置
    labe2->move(710,70);
    //设置长宽
    labe2->resize(120,50);
    //设置字体大小
    //labe2->setStyleSheet("background-color:rgb(76,162,229);");
    // 创建 QFont 实例,设置字体大小
    QFont font1 = labe1->font();
    font1.setPointSize(16);  // 设置字体大小为 16 点

    // 应用字体设置到 QLabel
    labe2->setFont(font1);


    //输入框1
    QLineEdit *le1 = new QLineEdit(this);
    //移动位置,相较于左上原点0,0
    le1->move(460,125);
    //设置输入框大小
    le1->resize(430,60);
    //设置默认显示
    le1->setPlaceholderText("请输入账号");
    //设置弧度,设置背景色
    le1->setStyleSheet("background-color:rgb(127,214,245);border-radius:5px");




    //输入框2
    QLineEdit *le2 = new QLineEdit(this);
    //移动位置,相较于左上原点0,0
    le2->move(460,190);
    //设置输入框大小
    le2->resize(430,60);
    //设置默认显示
    le2->setPlaceholderText("请输入密码");
    //设置弧度,设置背景色
    le2->setStyleSheet("background-color:rgb(127,214,245);border-radius:5px");
    //设置密码显示方式
    le2->setEchoMode(QLineEdit::Password);


    //标签1
    QLabel *lab1 = new QLabel(this);
    //设置标签图片
    lab1->setPixmap(QPixmap("E:\\QT\\Qt\\pictrue\\login_1.png"));
    //设置标签位置
    lab1->move(410,135);
    //设置标签大小
    lab1->resize(50,50);
    //图片适应标签大小
    lab1->setScaledContents(true);



    //标签
    QLabel *lab2 = new QLabel(this);
    //设置标签图片
    lab2->setPixmap(QPixmap("E:\\QT\\Qt\\pictrue\\login_2.png"));
    //设置标签位置
    lab2->move(410,195);
    //设置标签大小
    lab2->resize(50,50);
    //图片适应标签大小
    lab2->setScaledContents(true);


    //按钮1
    QPushButton *ptn1 = new QPushButton("注册",this);
    //设置坐标
    ptn1->move(460,290);
    //设置长宽
    ptn1->resize(200,50);
    //设置背景颜色,弧度,字体颜色
    ptn1->setStyleSheet("background-color:rgb(127,214,245);color:white;border-radius:5px");



    //按钮2
    QPushButton *ptn2 = new QPushButton("登录",this);
    //设置坐标
    ptn2->move(690,290);
    //设置长宽
    ptn2->resize(200,50);
    //设置背景颜色,弧度,字体颜色
    ptn2->setStyleSheet("background-color:rgb(127,214,245);color:white;border-radius:5px");


    //提示框3
    QLabel *labe3 = new QLabel("其他方式登录",this);
    //设置标签位置
    labe3->move(600,350);
    //设置标签大小
    labe3->resize(120,50);


    //提示框4
    QLabel *labe4 = new QLabel(this);
    //设置标签位置
    labe4->move(520,410);
    //设置标签大小
    labe4->resize(60,60);
    //设置标签填充图片
    labe4->setPixmap(QPixmap("E:\\QT\\Qt\\pictrue\\weixin.png"));

    labe4->setScaledContents(true);


    //提示框4
    QLabel *labe5 = new QLabel(this);
    //设置标签位置
    labe5->move(670,410);
    //设置标签大小
    labe5->resize(60,60);
    //设置标签填充图片
    labe5->setPixmap(QPixmap("E:\\QT\\Qt\\pictrue\\weibo.png"));

    labe5->setScaledContents(true);


    //提示框4
    QLabel *labe6 = new QLabel(this);
    //设置标签位置
    labe6->move(820,410);
    //设置标签大小
    labe6->resize(60,60);
    //设置标签填充图片
    labe6->setPixmap(QPixmap("E:\\QT\\Qt\\pictrue\\qq_1.png"));

    labe6->setScaledContents(true);

    //动态图
    QLabel *labe7 = new QLabel(this);
    labe7->move(50,100);
    labe7->resize(350,300);
    QMovie *mv = new QMovie("E:\\QT\\Qt\\pictrue\\new.gif");
    labe7->setMovie(mv);
    mv->start();
    labe7->setScaledContents(true);

}

void MyWidget::paintEvent(QPaintEvent *event) {
    QPainter painter(this);
    QPixmap background("E:/QT/Qt/pictrue/Milk.png");
    painter.drawPixmap(0, 0, width(), height(), background);
    QWidget::paintEvent(event);
}



MyWidget::~MyWidget()
{
}

头文件

cpp 复制代码
#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QWidget>

#include <QLineEdit>

#include <QLabel>

#include <QIcon>

#include <QPushButton>

#include <QMovie>

#include <QPainter>


class MyWidget : public QWidget
{
    Q_OBJECT
protected:
    void paintEvent(QPaintEvent *event) override;

public:
    MyWidget(QWidget *parent = nullptr);
    ~MyWidget();
};
#endif // MYWIDGET_H
相关推荐
侃侃_天下2 天前
最终的信号类
开发语言·c++·算法
echoarts2 天前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Aomnitrix2 天前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式
每天回答3个问题2 天前
UE5C++编译遇到MSB3073
开发语言·c++·ue5
伍哥的传说2 天前
Vite Plugin PWA – 零配置构建现代渐进式Web应用
开发语言·前端·javascript·web app·pwa·service worker·workbox
小莞尔2 天前
【51单片机】【protues仿真】 基于51单片机八路抢答器系统
c语言·开发语言·单片机·嵌入式硬件·51单片机
我是菜鸟0713号2 天前
Qt 中 OPC UA 通讯实战
开发语言·qt
JCBP_2 天前
QT(4)
开发语言·汇编·c++·qt·算法
Brookty2 天前
【JavaEE】线程安全-内存可见性、指令全排序
java·开发语言·后端·java-ee·线程安全·内存可见性·指令重排序
百锦再2 天前
[特殊字符] Python在CentOS系统执行深度指南
开发语言·python·plotly·django·centos·virtualenv·pygame