PyQt5之实现网易云播放唱片的动作(图片的旋转)

本文分享了一个使用PyQt5实现唱片播放动画的案例,通过自定义组件和属性动画,实现了唱片的自动旋转及把柄的开合效果。

最近在做项目的播放器部分,在实现播放器像网易云那样点击播放唱片就会自动转动时遇到了问题,经过一套搜索引擎组合拳,终于是实现了该功能,成品如下
成品

闲话少说,上代码(代码部分做了大量的注释和个人理解,就不额外的解释了,因为我也是查大佬的案例过来的,所以理解仅供参考)

"""唱片"""
class Cp_Comp_1(QObject):
    def __init__(self):
        super(Cp_Comp_1, self).__init__()
        # 加载图片资源
        pixmap_1 = QPixmap('./img/main_UI/play/play_cp_comp1.png')
        # 按比例设置图片大小
        scaledPixmap_1 = pixmap_1.scaled(150,150)
        # 初始化动作
        self.animation()
        # 定义QGraphicsPixmapItem
        self.pixmap_item_1 = QGraphicsPixmapItem(scaledPixmap_1)
        # 设置item旋转的中心点
        self.pixmap_item_1.setTransformOriginPoint(75,75)   # 中心
        # 设置图片的初始位置
        self.pixmap_item_1.setPos(0,30)

    def _set_rotation(self,degree):
        self.pixmap_item_1.setRotation(degree)    # 自身改变角度
    def animation(self):
        # 创建唱片360°无死角转动
        self.anim = QPropertyAnimation(self, b'rotation'
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MGodmonkey

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值