2011-02-10 6 views
2

J'étudie s'il est possible de migrer un wxPython existant vers PyQt. Ce serait bien si je pouvais porter des widgets sur PyQt alors que d'autres sont encore alimentés par wx. J'ai déjà vu les deux eventloops courir côte à côte dans un exemple (voir ci-dessous). Mais les widgets sont toujours dans des fenêtres séparées. Y at-il un moyen d'intégrer un widget Qt dans un wxWindow? (Je ne besoin de quelque chose qui fonctionne sur Linux, car cela ne concerne que la phase de transition.)Intégrer le widget PyQt4 dans la fenêtre wxPython

#!/usr/bin/env python 

import wx, sys 
from PyQt4 import QtCore, QtGui 

class QEventLoopTimer(wx.Timer): 
    def __init__(self, owner): 
     wx.Timer.__init__(self, owner, wx.ID_ANY) 
     self.Start(10) 
     self.Bind(wx.EVT_TIMER, self.runEvents, self) 
    def runEvents(self): 
     QtCore.QCoreApplication.instance().processEvents() 

wapp = wx.PySimpleApp() 
qapp = QtGui.QApplication(sys.argv) 

frame = wx.Frame(None, wx.ID_ANY, name = "test-wxqt.py") 
frame.Show(True) 
timer = QEventLoopTimer(frame) 

button = QtGui.QPushButton("Hallo") 
button.show() 

wapp.MainLoop() 

Répondre

0

Je ne pense pas que ce soit possible sans le piratage de l'interface graphique de bas niveau pour une ou l'autre boîte à outils.

Questions connexes