PySide(PyQt)使用QPropertyAnimation制作動態(tài)界面的示例代碼

主腳本:
# encoding: utf-8
import os
import sys
from PySide6.QtCore import QPropertyAnimation, QEasingCurve
from UIS import *
# 主畫面類
class MainWindow(QMainWindow, animationButton_ui.Ui_MainWindow):
def __init__(self):
super().__init__()
self.setupUi(self)
self.run() # 初始化
self.signal_slot() # 信號和槽
# 初始化
def run(self):
self.move(0, 0)
self.show() # 顯示畫面
# 畫面層面的信號和槽
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()
# 項目的定義
class UI(QObject): # 將項目定義為QObject,用來管理項目級別的信號和變量
def __init__(self):
super().__init__()
self.run() # 初始化
# 項目的初始化
def run(self):
# 項目層面的信號和槽
def signal_slot():
pass
# 退出系統(tǒng)之前的操作
app.aboutToQuit.connect(Jobs.before_quit)
signal_slot()
# #############################主程序##################################
if __name__ == '__main__':
app = QApplication(sys.argv)
# 項目的實例化
ui = UI()
ui.windows = [] # 所有用到的窗口
# 初始化畫面
mainWindow = MainWindow() # 主畫面實例化
ui.windows.append(mainWindow)
sys.exit(app.exec())到此這篇關(guān)于PySide(PyQt)使用QPropertyAnimation制作動態(tài)界面的文章就介紹到這了,更多相關(guān)PyQt 使用QPropertyAnimation動態(tài)界面內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python用戶推薦系統(tǒng)曼哈頓算法實現(xiàn)完整代碼
這篇文章主要介紹了Python用戶推薦系統(tǒng)曼哈頓算法實現(xiàn)完整代碼,簡單介紹了曼哈頓距離的定義,然后分享了其Python實現(xiàn)代碼,具有一定借鑒價值,需要的朋友可以了解下。2017-12-12
anaconda的安裝和配置環(huán)境及導(dǎo)入pycharm的方法
這篇文章主要介紹了anaconda的安裝和配置環(huán)境及導(dǎo)入pycharm的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
Python可視化工具如何實現(xiàn)動態(tài)圖表
這篇文章主要介紹了Python可視化工具如何實現(xiàn)動態(tài)圖表,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-10-10
解決Django no such table: django_session的問題
這篇文章主要介紹了解決Django no such table: django_session的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04
對python .txt文件讀取及數(shù)據(jù)處理方法總結(jié)
下面小編就為大家分享一篇對python .txt文件讀取及數(shù)據(jù)處理方法總結(jié),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-04-04
python實現(xiàn)圖片彩色轉(zhuǎn)化為素描
這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)圖片彩色轉(zhuǎn)化為素描,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-01-01

