听歌的时候看到网易云音乐播放器就是在播放歌曲的时候,有一个歌星的图片在旋转,停止就不动了,所以自己闲着没事的时候,就写了一个小功能,可将此程序嵌入到你们的音乐播放器项目中。
看代码

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QTimer>
#include <QPushButton>class Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr);~Widget();protected:void paintEvent(QPaintEvent *event);public slots:void upDateRote();void onStartorStopRote();private:QTimer *m_pTimer;int m_Rote=0;QPushButton *m_pbtn=nullptr;bool m_bStart=false;
};
#endif // WIDGET_H
#include "widget.h"
#include <qpainter.h>
#include <qdebug.h>
#include <qpushbutton.h>Widget::Widget(QWidget *parent): QWidget(parent)
{this->resize(800,500);m_pTimer=new QTimer();connect(m_pTimer,&QTimer::timeout,this,&Widget::upDateRote);//m_pTimer->start(100);m_pbtn=new QPushButton(this);m_pbtn->setText(tr("Start"));m_pbtn->setFixedSize(118,27);connect(m_pbtn,&QPushButton::clicked,this,&Widget::onStartorStopRote);
}Widget::~Widget()
{}void Widget::paintEvent(QPaintEvent *event)
{QPainter painter(this);painter.setRenderHint(QPainter::Antialiasing, true);QPainterPath painterPath;painterPath.addEllipse(100,100,200,200);painter.setClipPath(painterPath);painter.drawPath(painterPath);QPixmap pixMap("C:/Users/dujia/Desktop/zj.jpg");QTransform transform;transform.translate(200,200);  //平移坐标原点  必须painter.setTransform(transform);painter.save();painter.rotate(2*m_Rote);//将需要旋转的内容绘制在中间painter.drawPixmap(-100,-100,200,200,pixMap);  //旋转操作始终是围绕坐标原点进行旋转painter.restore();}void Widget::upDateRote()
{m_Rote=m_Rote+1;if(m_Rote==180){m_Rote=0;}update();
}void Widget::onStartorStopRote()
{m_bStart=!m_bStart;if(m_bStart){m_pTimer->start(100);m_pbtn->setText(tr("Stop"));}else{m_pTimer->stop();m_pbtn->setText(tr("Start"));}
}

看下效果:

喜欢的就点个赞呗(๑′ᴗ‵๑)I Lᵒᵛᵉᵧₒᵤ❤
ヾ( ̄▽ ̄)ByeBye

qt实现网易云音乐播放器的图片旋转功能(paintevent)相关推荐

  1. 基于Qt模仿网易云音乐播放器

    基于Qt模仿网易云音乐界面,目前只实现了部分界面,后续继续完善改造. 部分代码: #ifndef MYSQLDATAMGR_H #define MYSQLDATAMGR_H#include <Q ...

  2. 微信小程序做一个圆形图片旋转可以控制开始和结束-音乐播放器的图片旋转功能

    微信小程序做一个圆形图片旋转可以控制开始和结束 1.在 WXML 文件中添加一个 标签,并设置图片的 src 和样式,并为其绑定一个 animation 用来控制旋转动画. <image src ...

  3. 树莓派云音乐c语言,基于树莓派的红外遥控版网易云音乐播放器

    基于树莓派的红外遥控版网易云音乐播放器.下面是遥控键盘示意图: CH- CH CH+ << >> || - + EQ 0 100+ 200+ 1 2 3 4 5 6 7 8 9 ...

  4. linux树莓派网易云音乐,基于树莓派的红外遥控版网易云音乐播放器

    基于树莓派的红外遥控版网易云音乐播放器.下面是遥控键盘示意图: CH- CH CH+ << >> || - + EQ 0 100+ 200+ 1 2 3 4 5 6 7 8 9 ...

  5. HTML+CSS+JAVASCRIPT 高仿低配网页版网易云音乐播放器 1

    HTML+CSS+JAVASCRIPT 高仿低配网页版网易云音乐播放器 前言 没有使用任何框架,只是想用最简单纯js的代码实现下 前台: Javascript+jQuery 后台: php/nodej ...

  6. HTML网页调用 网易云 音乐播放器代码

    表现形式一:单曲播放 调用代码: <iframe frameborder="no" border="0" marginwidth="0" ...

  7. vue3 + TypeScript + vant +pinia 实现网易云音乐播放器

    vue3 + TypeScript + vant +pinia 实现网易云音乐播放器 实现功能 每日推荐 私人FM 歌单广场 排行榜 歌手 歌曲播放 mv播放 上下滑动切换 云盘上传 用户登录 歌单创 ...

  8. 移动应用开发——uni-app框架 仿网易云音乐播放器学习心得

    目录 一.uni-app框架介绍 1.什么是 uni-app 2.为什么要选择uni-app 3.uni-app 统一规范 4.uni-app功能框架 二.开发工具与项目创建 1.开发工具 2.项目创 ...

  9. YesPlayMusic:一个高颜值多音频资源的网易云音乐播放器

    都2023年了还有人不知道这款开源免费下载的多音频,高颜值的音乐播放器吗(文末有下载地址) 首先我们来看一下YesPlayMusic的特性 和网易云音乐播放器的功能大同小异,少了歌曲评论的功能,这个功 ...

  10. 第三方网易云音乐播放器ieaseMusic Mac中文版v1.3.4版

    ieasemusic mac中文版是目前mac平台上最好的网易云音乐播放器,与网易云音乐官方客户端最大的区别是,官方的就是「客户端」,完全按照其产品内容进行直接堆砌布局,而 ieaseMusic 是基 ...

最新文章

  1. 聚焦AI发展 | 这可能是今年最干货的线上分享会了
  2. “我求你们不要再给我打电话了,我不炒股!”
  3. dateformat java 格式_java Date日期类和SimpleDateFormat日期类格式
  4. 19-for循环语句
  5. BZOJ 1026 [SCOI2009]windy数
  6. VS, VS Code, VS Online, VS xxx, 你都分清了吗?
  7. 修改节点的属性 节点默认不允许修改
  8. 语音识别行业成长红利期已过,行业寡头显现,小公司生存状况堪忧
  9. 键盘手机JAVA模拟器下载_手机java模拟器
  10. PostgreSQL数据库——Pigsty grafana dashboards
  11. 批量打印pdf/图片
  12. 如何提高学习效率,三大法则,五大步骤
  13. Android 内存卡 / Micro SD 卡 / TF 卡 / 存储卡 剩余容量 / 剩余内存 / 可用空间、总容量的 2 种获取方式
  14. WordPress树叶飘落特效插件1.2
  15. Java后端返回前端的日期差9小时?
  16. cocoscreator利用中点位移算法制作闪电
  17. python可以用else作为变量名_在Python中可以使用if作为变量名。
  18. lc1819——枚举因数并判定,两种解法
  19. 笔记:Spring基础
  20. 已知最小小行星准备迎接人类探视

热门文章

  1. Linux中/etc/rc开头文件详细解释
  2. html中半圆怎么写,html 中画半圆的方法
  3. android 数组赋值字符串_给字符数组赋值的方法
  4. 怎么从php文件中查找代码,php类在文件中查找类文件,但不查找类
  5. python的matplotlib画图时独立窗口_解决新版Pycharm中Matplotlib图像不在弹出独立的显示窗口问题...
  6. vue添加定位功能_vue 实现Web端的定位功能 获取经纬度
  7. storm发布jar包时报找不到主类_咖啡5元一大包,进口饼干10元3包…济南有个临期食品超市,快过期的食品你会买单吗...
  8. linux系统管理Linux系统实验,操作系统原理与Linux系统实验
  9. l3asnumanode 设置_numa设置与mysql
  10. python 保存图片_python 输出文档到world