PySide(PyQt)使用QPropertyAnimation制作動(dòng)態(tài)界面的示例代碼
主腳本:
# encoding: utf-8 import os import sys from PySide6.QtCore import QPropertyAnimation, QEasingCurve from UIS import * # 主畫(huà)面類 class MainWindow(QMainWindow, animationButton_ui.Ui_MainWindow): def __init__(self): super().__init__() self.setupUi(self) self.run() # 初始化 self.signal_slot() # 信號(hào)和槽 # 初始化 def run(self): self.move(0, 0) self.show() # 顯示畫(huà)面 # 畫(huà)面層面的信號(hào)和槽 def signal_slot(self): self.pushButton_2.clicked.connect(lambda: Jobs.btn_animation(self.frame_1)) pass # 按鈕站的槽函數(shù) class Jobs: @staticmethod def btn_animation(obj): ui.animation = QPropertyAnimation(obj, b"minimumWidth") ui.animation.setDuration(300) start_size = obj.width() if obj.width() == 50: end_size = 150 else: end_size = 50 ui.animation.setStartValue(start_size) ui.animation.setEndValue(end_size) ui.animation.setEasingCurve(QEasingCurve.Linear) ui.animation.start() @staticmethod def Job_todo_2(): pass # 退出系統(tǒng)前的保存、清理、釋放等操作 @staticmethod def before_quit(): if ui.windows: for w in ui.windows: w.close() # 項(xiàng)目的定義 class UI(QObject): # 將項(xiàng)目定義為QObject,用來(lái)管理項(xiàng)目級(jí)別的信號(hào)和變量 def __init__(self): super().__init__() self.run() # 初始化 # 項(xiàng)目的初始化 def run(self): # 項(xiàng)目層面的信號(hào)和槽 def signal_slot(): pass # 退出系統(tǒng)之前的操作 app.aboutToQuit.connect(Jobs.before_quit) signal_slot() # #############################主程序################################## if __name__ == '__main__': app = QApplication(sys.argv) # 項(xiàng)目的實(shí)例化 ui = UI() ui.windows = [] # 所有用到的窗口 # 初始化畫(huà)面 mainWindow = MainWindow() # 主畫(huà)面實(shí)例化 ui.windows.append(mainWindow) sys.exit(app.exec())
到此這篇關(guān)于PySide(PyQt)使用QPropertyAnimation制作動(dòng)態(tài)界面的文章就介紹到這了,更多相關(guān)PyQt 使用QPropertyAnimation動(dòng)態(tài)界面內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python web.py開(kāi)發(fā)httpserver解決跨域問(wèn)題實(shí)例解析
這篇文章主要介紹了python web.py開(kāi)發(fā)httpserver解決跨域問(wèn)題實(shí)例解析,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02Python中最好用的json庫(kù)orjson用法詳解
orjson是一個(gè)用于python的快速、正確的json庫(kù),它的基準(zhǔn)是 json最快的python庫(kù),具有全面的單元、集成和互操作性測(cè)試,下面這篇文章主要給大家介紹了關(guān)于Python中最好用的json庫(kù)orjson用法的相關(guān)資料,需要的朋友可以參考下2022-06-06PyQt5.6+pycharm配置以及pyinstaller生成exe(小白教程)
這篇文章主要介紹了PyQt5.6+pycharm配置以及pyinstaller生成exe,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06解析python調(diào)用函數(shù)加括號(hào)和不加括號(hào)的區(qū)別
這篇文章主要介紹了python調(diào)用函數(shù)加括號(hào)和不加括號(hào)的區(qū)別,不帶括號(hào)時(shí),調(diào)用的是這個(gè)函數(shù)本身 ,是整個(gè)函數(shù)體,是一個(gè)函數(shù)對(duì)象,不須等該函數(shù)執(zhí)行完成,具體實(shí)例代碼跟隨小編一起看看吧2021-10-10Python PyQt4實(shí)現(xiàn)QQ抽屜效果
這篇文章主要為大家詳細(xì)介紹了Python PyQt4實(shí)現(xiàn)QQ抽屜效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04python-opencv實(shí)現(xiàn)視頻指定幀數(shù)間隔圖像的保存功能
這篇文章主要介紹了python-opencv實(shí)現(xiàn)視頻指定幀數(shù)間隔圖像的保存的方法,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04淺談Python numpy創(chuàng)建空數(shù)組的問(wèn)題
今天遇到一個(gè)小小的問(wèn)題,是關(guān)于numpy創(chuàng)建空數(shù)組,今天特地整理了這篇文章,文中作出了非常詳細(xì)的介紹,對(duì)正在學(xué)習(xí)python的小伙伴們有很好的幫助,需要的朋友可以參考下2021-05-05