2010-11-18 3 views
1

J'ai un python 2.6 installé avec les dernières liaisons PySide Qt. Le code suivant est à la main si la ligne thread.start() n'est pas commentée. Quelqu'un peut suggérer ce que je fais mal?Python se bloque avec les liaisons Qt

from PySide.QtCore import * 
from PySide.QtGui import * 
import sys 

app = QApplication(sys.argv) 
window = QWidget() 
window.show() 
thread = QThread() 
# thread.start() 
app.exec_() 
+0

Je suppose que c'est parce que QThread :: start essaie d'utiliser la boucle d'événements qui n'est pas en cours d'exécution jusqu'à ce que vous app.exec_(), semble possible, de toute façon . – James

+1

vous avez demandé à ce sujet dans #pyside sur IRC et avez obtenu une réponse, n'est-ce pas? Vous voulez le mettre comme une réponse et l'accepter? Cela peut être utile pour les autres. –

+0

Bien sûr. Je donne juste un peu de temps aux gens pour y répondre. Ce n'est pas très poli de répondre à ses propres questions. – grigoryvp

Répondre

1

C'est un bug PySide connu. La solution consiste à sous-classer QThread et à définir run() méthode qui appelle exec_()