zoukankan      html  css  js  c++  java
  • python 动画

    from PyQt5.QtWidgets import QApplication, QWidget,QPushButton,QLabel
    import sys
    from PyQt5.QtCore import Qt
    from PyQt5.QtCore import QPropertyAnimation,QPoint,QSize,QRect,QEasingCurve
    from PyQt5.QtGui import QPixmap,QPalette,QFont
    
    class win(QWidget):
        def __init__(self):
            super().__init__()
            self.resize(400,400)
    
            self.setWindowTitle('动画学习')
    
            label = QLabel(self)
            label.resize(200, 120)
            label.move(150,0)
    
            #label.setFont(QFont("Roman times",30))
            #label.setStyleSheet("font:20pt '楷体';border- 1px;border-style: solid;border-color: rgb(255, 0, 0);color: yellow")  #############设置边框
            label.setStyleSheet(
                "font:20pt '楷体';color: yellow")  #############设置边框
    
            label.setText("中国加油
    武汉加油
    中国必胜")
    
    
    
            #ani=QPropertyAnimation(btn,b'pos',self)  #创建动画对象
            ani = QPropertyAnimation(self)  #创建动画对象
            #ani.setTargetObject(btn)  #设置动画目标对象
            ani.setTargetObject(label)
            #ani.setTargetObject(self)
            ani.setPropertyName(b'pos')   #设置动画属性
            #注意:字节类型
            #pos---位置动画---QPoint
            #size---大小动画---QSize
            #geometry----位置+大小动画----QRect
            #windowOpacity---窗口的透明度(0.0是透明的    1.0是不透明)---好像只适合顶层窗口
    
            #ani.setStartValue(QPoint(0,0))  #设置开始位置---按钮的左上角位置
            #ani.setEndValue(QPoint(300,300))  #设置结束位置
            ani.setStartValue(QPoint(150,0))  #设置开始位置---按钮的左上角位置
            ani.setEndValue(QPoint(150,400))  #设置结束位置
    
            ani.setDuration(8000)  #设置动画单次时长---单位毫秒
    
            ani.setEasingCurve(QEasingCurve.InQuad)  #设置动画的节奏
            #取值   https://doc.qt.io/qt-5/qeasingcurve.html#Type-enum
    
            ani.start()  #动画开始---非阻塞
    
    
    
    
    if __name__=='__main__':
        app=QApplication(sys.argv)
        w=win()
        w.setObjectName("MainWindow")
        w.setStyleSheet("#MainWindow{background-color: red}")
        w.show()
        sys.exit(app.exec_())

    =========================================

  • 相关阅读:
    Java 8 锁机制
    Elasticsearch学习资料
    数据库相关
    Linux常用Shell命令
    如何高效编写可维护代码?
    分布式开放消息系统(RocketMQ)的原理与实践(转载)
    学习Linux第六天(学习文件权限和特殊权限)
    各大网络厂商列表
    Linux服务器系统信息查询
    关于情感
  • 原文地址:https://www.cnblogs.com/gisoracle/p/12289301.html
Copyright © 2011-2022 走看看