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

思维导图

相关推荐
羊羊小栈3 小时前
老人摔倒检测系统(基于YOLO姿态估计)
yolo·毕业设计·创业创新·大作业
羊羊小栈4 天前
农业病害知识管理系统(基于前后端Web开发)
前端·人工智能·毕业设计·大作业
羊羊小栈4 天前
非物质文化宣传系统(基于前后端Web开发)
前端·人工智能·毕业设计·大作业
羊羊小栈17 天前
AI赋能电力巡检:智能故障预警系统
人工智能·yolo·目标检测·毕业设计·大作业
羊羊小栈23 天前
基于「YOLO目标检测 + 多模态AI分析」的篮球动作规范智能检测分析预警系统
人工智能·yolo·目标检测·计算机视觉·毕业设计·大作业
羊羊小栈1 个月前
基于「YOLO目标检测 + 多模态AI分析」的水果蔬菜病害智能检测分析预警系统
人工智能·yolo·目标检测·计算机视觉·毕业设计·大作业
vx2_Biye_Design1 个月前
可白嫖源码---01340二手母婴用品交易平台 (案例分析)-附源码
毕业设计·源码·程序设计·毕设·计算机毕业设计·大作业·程序开发
羊羊小栈1 个月前
基于「YOLO目标检测 + 多模态AI分析」的宠物猫狗健康智能检测分析预警系统
人工智能·yolo·目标检测·计算机视觉·毕业设计·大作业
羊羊小栈1 个月前
基于「YOLO目标检测 + 多模态AI分析」的人员摔倒智能检测分析预警系统
人工智能·yolo·目标检测·计算机视觉·毕业设计·大作业
羊羊小栈1 个月前
基于「YOLO目标检测 + 多模态AI分析」的智慧植物辣椒病害智能检测分析预警系统
人工智能·yolo·目标检测·计算机视觉·毕业设计·大作业