QT 鼠标点击动态纹波GUI设计,鼠标点击水纹

#include <QMovie>
#include <QLabel>
#include <QMouseEvent>
#include <QLine>

QLabel *label_g ;
QMovie *movie ;


{
    label_g = new QLabel(main_widget);
    label_g->setAttribute(Qt::WA_TranslucentBackground);
    movie = new QMovie(":/tu/ggit.gif");//加载gif图片
    //设置label自动适应gif的大小
    label_g->setScaledContents(true);

    label_g->setMovie(movie);
    //这里为了调用move方便,进行resize,需要知道的是gif的大小本来也就是150*150
    label_g->resize(180,180);
    label_g->setStyleSheet("background-color:rgba(0,0,0,0);");
    //设置鼠标穿透
    label_g->setAttribute(Qt::WA_TransparentForMouseEvents, true);

    //绑定QMovie的信号,判断gif播放次数
    connect(movie, &QMovie::frameChanged, [=](int frameNumber) {
        if (frameNumber == movie->frameCount() - 1)//gif播放次数为1,关闭标签
            label_g->close();
    });

}

void menuWidget::mousePressEvent(QMouseEvent *e)
{
    if (e->button() == Qt::LeftButton) {

        //让label的中心在当前鼠标双击位置
        label_g->move(e->pos().x()-label_g->width()/2,e->pos().y()-label_g->height()/2);
        //开始播放gif
        movie->start();

        label_g->show();

    }
    QWidget::mousePressEvent(e);
}



 点击效果:

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-13 15:12:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-13 15:12:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-13 15:12:04       82 阅读
  4. Python语言-面向对象

    2024-03-13 15:12:04       91 阅读

热门阅读

  1. 如何排查 IMKit 用户头像无法加载问题

    2024-03-13 15:12:04       45 阅读
  2. 【云原生】关于解耦和平台化的一些思考

    2024-03-13 15:12:04       41 阅读
  3. 手机天猫等级怎么查

    2024-03-13 15:12:04       41 阅读
  4. Redis 中的字符串数据结构详解及字符串命令

    2024-03-13 15:12:04       42 阅读
  5. 编写Linux的SHELL脚本设置环境变量遇到的那些坑

    2024-03-13 15:12:04       40 阅读
  6. Stable Diffusion如何生成高质量的图-prompt写法介绍

    2024-03-13 15:12:04       40 阅读
  7. LeetCode刷题--- 摆动序列

    2024-03-13 15:12:04       45 阅读
  8. 人事面试提问技巧全攻略

    2024-03-13 15:12:04       42 阅读
  9. TCP并发模型 || select || poll || epoll

    2024-03-13 15:12:04       40 阅读
  10. 大数据开发(HBase面试真题-卷一)

    2024-03-13 15:12:04       43 阅读
  11. 机器学习实验------K-means聚类算法

    2024-03-13 15:12:04       43 阅读
  12. 嵌入式学习日记 25

    2024-03-13 15:12:04       37 阅读