Seite 1 von 1

QT Fenster in einer beliebigen Anwendung

Verfasst: 5. August 2006 10:56
von josef
Hallo,

wie kann man in einer beliebigen C++ Anwendung ein QT Fenster öffnen ohne gleich daraus eine QApplication machen zu müssen.
Der Grund für meine Frage ist, dass wir eine Programm mit einem Oberflächentool Tool geschrieben haben welches wir sukzessive auf QT umstellen wollen, ein sofortiges Umstellen jedoch aufgrund des Programmumfanges nicht möglich ist. Daher wollen wir alle neu zu implementierenden Oberflächenteile in QT erstellen bzw. schrittweise vorhandene Teile auf QT umstellen.

Danke

Verfasst: 5. August 2006 11:33
von FlorianBecker
Also mit X11 gibt es X11Embedded Klassen, die so was können, damit sind auch schon die einen oder anderen Wrapper für mplayer geschrieben worden. Unter Windows bin ich mir nich ganz sicher, aber da hilft ActiveX eigentlich immer. Genaueres kann ich dir aber so auf die Schnelle nicht sagen, müsste ich mich selber genauer informieren. Hast du mal doc.trolltech.com besucht.

Achja, es gibt ein MFC Framework, welches die Portierung übernehmen kann, soweit ich da auswendig weiß. Aber nach dem Thema musst einfach ein bischen googl'n.

Verfasst: 7. August 2006 10:13
von josef
Herzlichen Dank für die Anwort,

Die Anwendung läuft momentan nur unter Windows und verwendet kein MFC. Somit kommt also nur noch ActiveX in Frage. ActiveX wollen wir jedoch nicht verwenden, da man hierbei keine selstdefinierten Datentypen (Klassen) übergeben kann.

Unsere Vorstellung ein QT Fenster in unsere Anwendung aufrufen zu können sollte irgendwie so aussehen.

Code: Alles auswählen

...
MyQtWindow* win = new MyQtWindow(MyKlass *obj);
win->show();
...
Nachdem win->show() aufgerufen wurde, sollte das Programm anhalten bzw. in einem QT-Loop laufen und beim Schließen des QT-Fensters wieder weiterlaufen.

Danke

Verfasst: 7. August 2006 11:38
von Nassian
Ich glaube nicht, dass das sauber funktioniert und würde es sein lassen und die Applikation ordentlich geplant neu schreiben.