0
我正在使用PySide 1.1.1和python 2.7 Linux Ubuntu 12.10 012,通过QStateMachine发布QEvent时遇到问题。PySide QEvent发生崩溃
如果我想要它的工作,我必须保持对事件的参考,或者它崩溃。 我已经设置了一些示例代码来说明我的问题。
我想知道如果我做错了,或者如果它是一个已知的问题,并且如果我应该使用解决方法(保持事件的参考)?
#!/usr/bin/python
from __future__ import print_function
import sys
from PySide.QtCore import *
from PySide.QtGui import *
app = QApplication(sys.argv)
sm = QStateMachine()
init = QState(sm)
sm.setInitialState(init)
sm.start()
e = None
def no_crash():
global e
print("send an event that doesn't crash...")
e = QEvent(QEvent.Type(QEvent.registerEventType()))
sm.postEvent(e)
def crash():
print("and one that does...")
e = QEvent(QEvent.Type(QEvent.registerEventType()))
sm.postEvent(e)
QTimer.singleShot(2000, no_crash)
QTimer.singleShot(4000, crash)
sys.exit(app.exec_())
感谢由您的帮助
皮埃尔