pyqt5-动画组QAnimationGroup

from PyQt5.QtWidgets import QApplication, QWidget,QPushButton,QLabel
import sys
from PyQt5.QtCore import QPropertyAnimation,QPoint,QParallelAnimationGroup,QSequentialAnimationGroup class win(QWidget):
def __init__(self):
super().__init__()
self.resize(400,400)
self.setWindowTitle('动画学习')
btn=QPushButton('按钮',self)
btn.clicked.connect(self.AA)
btn.move(150,350)
lab1=QLabel('动画1',self)
lab1.setStyleSheet('background-color:yellow')
lab2 = QLabel('动画2', self)
lab2.setStyleSheet('background-color:red')
lab2.move(350,0)
lab3 = QLabel('动画3', self)
lab3.setStyleSheet('background-color:blue')
lab3.move(350,350)
ani1 = QPropertyAnimation(self)
ani2 = QPropertyAnimation(self)
ani3 = QPropertyAnimation(self)
ani1.setTargetObject(lab1)
ani2.setTargetObject(lab2)
ani3.setTargetObject(lab3)
ani1.setPropertyName(b'pos')
ani2.setPropertyName(b'pos')
ani3.setPropertyName(b'pos')
ani1.setStartValue(QPoint(0, 0))
ani2.setStartValue(QPoint(350, 0))
ani3.setStartValue(QPoint(350, 350))
ani1.setEndValue(QPoint(350, 0))
ani2.setEndValue(QPoint(350, 350))
ani3.setEndValue(QPoint(350, 0))
ani1.setDuration(5000)
ani2.setDuration(5000)
ani3.setDuration(5000) #pani=QParallelAnimationGroup(self) #创建并行动画组
#并行动画组就是组内的动画同时执行
pani = QSequentialAnimationGroup(self) #创建串行动画组
#串行动画组就是组内动画按照顺序一个一个执行
self.pani=pani
pani.addAnimation(ani1) #往动画组里添加动画
#pani.addPause(5000) #添加暂停时间----并行动画没有这个指令
#currentAnimation() -> QAbstractAnimation----并行动画没有这个指令
pani.addAnimation(ani2)
pani.insertAnimation(1,ani3) #插入动画
#参数1 序号 #removeAnimation(QAbstractAnimation animation) 移除动画
#animationAt(int index) -> QAbstractAnimation 获取动画
#takeAnimation(int index) -> QAbstractAnimation 获取并移除
#animationCount() -> int 动画个数
#clear() 清空动画 pani.start() #启动动画组 def AA(self):
self.pani.pause() #暂停动画组所有动画
#其它指令看属性动画 if __name__=='__main__':
app=QApplication(sys.argv)
w=win()
w.show()
sys.exit(app.exec_())
天子骄龙
pyqt5-动画组QAnimationGroup的更多相关文章
- 并行动画组QParallelAnimationGroup
QParallelAnimationGroup会同时执行添加到该组的所有动画 import sys from PyQt5.QtGui import QPixmap from PyQt5.QtCore ...
- iOS 动画组
其实早在一个多月以前就已经实现了动作组播放的功能,不过当时感觉好像没有什么难度并没有放在心上,今天突然要用到动画组,发现已经忘记了,所以又将原来的代码翻出来看了下.最后决定还是写下来,以备不时之需.动 ...
- 之三:CAAnimationGroup - 动画组
动画组顾名思义就是将多个不同的动画效果组合起来同时作用于一个层上 代码演示: // 创建基本路径 CGMutablePathRef path = CGPathCreateMutable(); // 设 ...
- IOS第18天(9,核心动画-动画组)
****动画组 // 核心动画都是假象,不能改变layer的真实属性的值// 展示的位置和实际的位置不同.实际位置永远在最开始位置 #import "HMViewController.h&q ...
- iOS:核心动画之动画组CAAnimationGroup
CAAnimationGroup——动画组 动画组,是CAAnimation的子类,可以保存一组动画对象,将CAAnimationGroup对象加入层后,组中所有动画对象可以同时并发运行 属性说明: ...
- IOS-用动画组制作花瓣掉落效果(另附iOS动画图表)
重要的两个方法:1.动画的数组:animations 2.启动的时间 beginTime 注意:动画组设置了持续时间(duration)可能会导致动画组里面的持续时间不管用 代码如下: #import ...
- Core Animation 动画的使用:关键帧动画、基础动画、动画组
首先让我们了解下什么是 Core Animation,Core Animation 为核心动画,他为图形渲染和动画提供了基础.使用核心动画,我们只需要设置起点.终点.关键帧等一些参数,剩下的工作核心动 ...
- swift 设置图片动画组 iOS11之前 默认图片 设置不成功
在iOS 11 上, 1.先执行动画组 在设置图片执行帧动画,2.先设置图片在设置帧动画,执行帧动画 没有任何问题 在iOS 10和iOS9上,必须 执行 方法二(先设置图片在设置帧动画,执行帧动画 ...
- ios基础动画、关键帧动画、动画组、转场动画等
概览 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌.在这里你可以看到iOS中如何使用图层精简非交互式绘图,如何通过核心动画创建基础动画.关键帧动画 ...
随机推荐
- Kubernetes 中文文档
Kubernetes 中文文档 如果想学习 Kubernetes 的小伙伴,可以参考如下文档学习: https://www.kubernetes.org.cn/docs 文档中详细讲解了 k8s 的设 ...
- JS对象—数组总结(创建、属性、方法)
JS对象—数组总结(创建.属性.方法) 1.创建字符串 1.1 new Array() var arr1 = new Array(); var arr2 = new Array(6); 数组的长度为6 ...
- ps和top进程监控
一.名词解释 1.什么是进程(what is process)? 答:进程是程序运行的过程,伴有动态,生命和运行状态.(组成:1.已分配内存的地址空间 2.安全属性,包括所有权凭据和特权 3.程序 ...
- XSS-存储型
@实操视频https://www.bilibili.com/video/av26679456?from=search&seid=13377211289924067562 存储型的注入对象不是搜 ...
- CDH的ntp时间同步
云服务器: ntpq -p ntpdate -u 10.52.255.1 #手动同步 自建NTP服务器: https://www.cnblogs.com/yinzhengjie/p/9480665. ...
- 【转帖】大话Spring Cloud
springcloud(一):大话Spring Cloud 2017/05/01 http://www.ityouknow.com/springcloud/2017/05/01/simple-sp ...
- MySQL中的索引优化
MySQL中的SQL的常见优化策略 MySQL中的索引优化 MySQL中的索引简介 过多的使用索引将会造成滥用.因此索引也会有它的缺点.虽然索引大大提高了查询速度,同时却会降低更新表的速度,如对表进行 ...
- generator 到 async 的简单理解。
generator 到 async 的简单理解.觉得实现方式很有意思. 1. generator generator 函数返回一个遍历器对象 遍历器对象 每次调用next 方法 返回 有着value ...
- css 文本单行显示溢出时出现省略号 多行显示溢出时出现省略号 首行缩进
一.文本单行显示溢出时出现省略号 二.文本多行显示溢出时出现省略号(这种样式只能在webkit和移动端使用,包括小程序,不能设置固定高度) 三.首行缩进两字符 text-indent: 2em; 四. ...
- Tomcat 使用jms 采集需要配置
Tomcat 使用JMS采集配置需要加入以后配置参数,本示例是在 eclipse 下启动tomcat中的配置. 在tomcat Arguments选择卡的VM arguments中加入: -Dcom. ...