12.7作业

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

MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)
{
    //***********窗口相关设置***********
    //设置窗体大小
    this->resize(540,410);
    this->setFixedSize(540,410);
    //取消菜单栏
    this->setWindowFlag(Qt::FramelessWindowHint);

    //**********标签相关设置*****************
    //新建第一个标签,设置大小,设置背景色
    QLabel *lab1 = new QLabel(this);
    lab1->resize(540,160);
    lab1->setStyleSheet("background-color:pink");

    //动态图  接收动图
    QMovie *mv = new QMovie("H:\\QT-test\\QT\\ikun.gif");
    //将动态图放入标签
    lab1->setMovie(mv);
    //将图动起来
    mv->start();
    //自动适应lab1
    lab1->setScaledContents(true);

    //新建第二个标签
    QLabel *lab2 = new QLabel(this);
    //设置标签大小
    lab2->resize(25,25);
    //设置标签
    lab2->setPixmap(QPixmap("H:\\QT-test\\QT\\th.jpg"));
    //移动图片
    lab2->move(10,10);
    //让图片自适应
    lab2->setScaledContents(true);

    //新建第三个标签
    QLabel *lab3 = new QLabel(this);
    //移动标签
    lab3->move(160,220);
    //设置标签大小
    lab3->resize(25,25);
    //设置图片
    lab3->setPixmap(QPixmap("H:\\QT-test\\QT\\th2.jpg"));
    //让图片自适应
    lab3->setScaledContents(true);

    //新建第四个标签
    QLabel *lab4 = new QLabel(this);
    //移动标签
    lab4->move(160,270);
    //设置标签大小
    lab4->resize(25,25);
    //设置图片
    lab4->setPixmap(QPixmap("H:\\QT-test\\QT\\th3.jpg"));
    //让图片自适应
    lab4->setScaledContents(true);

    //新建第一个行编辑器
    QLineEdit *edit1 = new QLineEdit(this);
    //移动行编辑器
    edit1->move(200,220);
    //设置行编辑器大小
    edit1->resize(200,25);
    //占位
    edit1->setPlaceholderText("请输入练习时长");

    //新建第一个行编辑器
    QLineEdit *edit2 = new QLineEdit(this);
    //移动行编辑器
    edit2->move(200,270);
    //设置行编辑器大小
    edit2->resize(200,25);
    //占位
    edit2->setPlaceholderText("你是不是小黑子");
    //设置显示模式:密码
    edit2->setEchoMode(QLineEdit::Password);

    //新建按钮
    QPushButton *btn1 = new QPushButton(this);
    //移动按钮
    btn1->move(160,320);
    //设置按钮大小
    btn1->resize(240,25);
    //设置按钮背景色和圆弧角
    btn1->setStyleSheet("background-color:pink;border-radius:6px");
    //设置按钮内容
    btn1->setText("进入真爱粉群");

//    QLabel *lab5 = new QLabel(this);
//    lab5->move(220,120);
//    lab5->resize(85,85);
//    lab5->setStyleSheet("background-color:pink;border-radius:42px");
//    //lab5->setPixmap(QPixmap("H:\\QT-test\\QT\\pictrue\\login.png"));
//    lab5->setScaledContents(true);

    //新建标签 放入图片设置为圆形----网上借鉴的
    QLabel *lab5 = new QLabel(this);
    lab5->setFixedSize(80, 80);
    lab5->move(220,120);
    // 加载图片并调整尺寸
    QPixmap pixmap("H:\\QT-test\\QT\\th.jpg");
    pixmap = pixmap.scaled(lab5->size(), Qt::KeepAspectRatioByExpanding, Qt::SmoothTransformation);
    // 创建圆形mask,使用QPainter绘制
    QPixmap roundPixmap(lab5->size());
    roundPixmap.fill(Qt::transparent);
    QPainter painter(&roundPixmap);
    painter.setRenderHint(QPainter::Antialiasing, true);
    painter.setPen(Qt::NoPen);
    painter.setBrush(Qt::white);
    painter.drawEllipse(roundPixmap.rect());
    // 将原始图片按照mask绘制到圆形pixmap上
    painter.setCompositionMode(QPainter::CompositionMode_SourceIn);
    painter.drawPixmap(0, 0, pixmap);
    // 将圆形pixmap设置为label的背景图像
    lab5->setPixmap(roundPixmap);

    QLabel *lab6 = new QLabel(this);
    lab6->resize(60, 60);
    lab6->move(0,350);
    lab6->setPixmap(QPixmap("H:\\QT-test\\QT\\lanqiu.png"));
    lab6->setScaledContents(true);
}

MyWidget::~MyWidget()
{
}

思维导图

相关推荐
vx-程序开发6 天前
【计算机毕设】51300童装超市管理系统的设计与实现
java·vue.js·spring boot·源码·课程设计·毕设·大作业
vx-程序开发6 天前
【计算机毕设】52744基于微信小程序的民宿智能预订系统
java·spring boot·毕业设计·源码·课程设计·毕设·大作业
MZ_ZXD00111 天前
【关注可白嫖源码】--课程设计--毕业设计-- 29210 Vue.js 3+Springboot中药材基本信息与图片查询系统
javascript·spring boot·课程设计·毕设·大作业·程序开发·毕设代做
MZ_ZXD00111 天前
【关注可白嫖源码】--课程设计--毕业设计-- 00994论文基于Python的招聘信息分析系统(案件分析)
源码·课程设计·毕设·大作业·程序开发·程序定制·毕设代做
MZ_ZXD00112 天前
【关注可白嫖源码】--课程设计--毕业设计-- 42557基于springboot的大学生体质健康管理系统
spring boot·课程设计·毕设·大作业·程序开发·程序定制·毕设代做
MZ_ZXD00112 天前
【关注可白嫖源码】--课程设计--毕业设计-- 00904基于Springboot+MySQL的家政平台系统(案件分析)
源码·课程设计·毕设·大作业·程序开发·程序定制·毕设代做
MZ_ZXD00112 天前
【关注可白嫖源码】--课程设计--毕业设计-- 82355基于LLM和数字人的虚拟面试系统(案件分析)
源码·课程设计·毕设·大作业·程序开发·程序定制·毕设代做
小马哥程序开发14 天前
[点赞收藏免费领取 · 项目源码]57105基于Spring Boot的充电桩管理系统的设计与实现
java·spring boot·源码·课程设计·毕设·大作业·课设
MZ_ZXD00115 天前
【关注可白嫖源码】--课程设计--毕业设计-- 82714基于Python的足球俱乐部管理系统的设计与实现(案件分析)
源码·课程设计·毕设·大作业·程序开发·程序定制·毕设代做
羊羊小栈21 天前
基于「YOLO目标检测 + 多模态AI分析」的水稻病害智能检测分析预警系统(LangChain框架)
人工智能·yolo·目标检测·毕业设计·创业创新·大作业