gpt4 book ai didi

python - 更改销售额时生成左翼幻灯片动画

转载 作者:行者123 更新时间:2023-12-01 08:16:00 25 4
gpt4 key购买 nike

我有以下代码,我试图在其中生成向左的动画幻灯片并显示以下 QMainWindow 并关闭它在函数中使用 QPropertyAnimation 的当前窗口,但它在这里不起作用我保留代码:

原点.py

from PyQt5.QtWidgets import QMainWindow,QApplication,QPushButton
from PyQt5 import QtCore
from segunda import MainTwo

class Main(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)


self.Boton = QPushButton(self)
self.Boton.setText("Press")
self.Boton.clicked.connect(self.AnimaFunction)

self.next = MainTwo()

def AnimaFunction(self):
self.anima = QtCore.QPropertyAnimation(self.next.show(),b'geometry')
self.anima.setDuration(1000)
self.anima.setStartValue(QtCore.QRect(0,0,0,0))
self.anima.setEndValue(QtCore.QRect(self.next.geometry()))
self.anima.start()


app = QApplication([])
m = Main()
m.show()
m.resize(800,600)
app.exec_()

Segunda.py

from PyQt5.QtWidgets import QMainWindow,QApplication,QLabel


class MainTwo(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)


self.Label = QLabel(self)
self.Label.setText("Soy la segunda ventana")
self.Label.resize(200,200)

最佳答案

您必须将窗口传递给 QPropertyAnimation,而是传递 show 方法的返回值 None,以便 QPropertyAnimation 将没有完成它的工作,考虑到上述解决方案是:

def AnimaFunction(self):
self.anima = QtCore.QPropertyAnimation(self.next, b'geometry')
self.anima.setDuration(1000)
self.anima.setStartValue(QtCore.QRect(0,0,0,0))
self.anima.setEndValue(QtCore.QRect(self.next.geometry()))
self.anima.start()
self.next.show()
self.hide()

关于python - 更改销售额时生成左翼幻灯片动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54977644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com