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
相关推荐
寻星探路7 分钟前
【Python 全栈测开之路】Python 进阶:库的使用与第三方生态(标准库+Pip+实战)
java·开发语言·c++·python·ai·c#·pip
SmartRadio8 小时前
CH585M+MK8000、DW1000 (UWB)+W25Q16的低功耗室内定位设计
c语言·开发语言·uwb
rfidunion8 小时前
QT5.7.0编译移植
开发语言·qt
rit84324998 小时前
MATLAB对组合巴克码抗干扰仿真的实现方案
开发语言·matlab
大、男人9 小时前
python之asynccontextmanager学习
开发语言·python·学习
hqwest9 小时前
码上通QT实战08--导航按钮切换界面
开发语言·qt·slot·信号与槽·connect·signals·emit
一只小bit9 小时前
Qt 常用控件详解:按钮类 / 显示类 / 输入类属性、信号与实战示例
前端·c++·qt·gui
AC赳赳老秦9 小时前
DeepSeek 私有化部署避坑指南:敏感数据本地化处理与合规性检测详解
大数据·开发语言·数据库·人工智能·自动化·php·deepseek
不知道累,只知道类10 小时前
深入理解 Java 虚拟线程 (Project Loom)
java·开发语言
国强_dev10 小时前
Python 的“非直接原因”报错
开发语言·python