c++ und QT innerhalb eines MS VS C++ Projekts?

Verschiedenes zu Qt
Antworten
Isa
Beiträge: 32
Registriert: 10. April 2006 13:18

c++ und QT innerhalb eines MS VS C++ Projekts?

Beitrag von Isa »

Hallo,

ich habe ein ziemlich großes C++ Projekt (ca. 50 Klassen). Für dieses Projekt soll eine GUI in QT erstellt werden. Meine erste Idee war, dass ich ein eigenes QT-projekt erstelle, dass über QProcess die exe des C++ Projekts aufruft und Ausgaben von der Applikation empfängt. Das hat auch funktioniert, allerdings lief die Ausgabe (mit readLineStdout) unheimlich langsam. Vor allem benötige ich nicht nur die Ausgaben der Applikation, sondern brauche z.T. auch Zugriff auf Objekte. Also müssen die QT-Klassen doch Bestandteil des C++-projekts sein, oder? Ich finde das eigentlich nicht sehr schön. Meine Idee ist jetzt, dass ich ein Interface erstelle über das Daten zwischen GUI und Applikation ausgetauscht werden können, funktioniert so etwas? Soll ich dann doch mit zwei verschiedenen Projekten arbeiten oder soll ein QT-projekt Teil eines C++-projekts sein? Wie würde so ein Interface aussehen? Und wie kann ich verhindern, dass das Programm so langsam ausgibt? Ich bräuchte eigentlich nur ein Anregungen, wie man so etwas angeht, wäre nett wenn ihr mir da weiterhelfen könntet.

Grüße,
Isa

Ach, ja, meine Daten: BS:Windows XP
MS VS C++ Net 7
QT 3.3.4
Shadow
Beiträge: 92
Registriert: 27. August 2005 18:15
Wohnort: Iserlohn
Kontaktdaten:

Re: c++ und QT innerhalb eines MS VS C++ Projekts?

Beitrag von Shadow »

Isa hat geschrieben:Hallo,

ich habe ein ziemlich großes C++ Projekt (ca. 50 Klassen). Für dieses Projekt soll eine GUI in QT erstellt werden. Meine erste Idee war, dass ich ein eigenes QT-projekt erstelle, dass über QProcess die exe des C++ Projekts aufruft und Ausgaben von der Applikation empfängt. Das hat auch funktioniert, allerdings lief die Ausgabe (mit readLineStdout) unheimlich langsam. Vor allem benötige ich nicht nur die Ausgaben der Applikation, sondern brauche z.T. auch Zugriff auf Objekte. Also müssen die QT-Klassen doch Bestandteil des C++-projekts sein, oder? Ich finde das eigentlich nicht sehr schön. Meine Idee ist jetzt, dass ich ein Interface erstelle über das Daten zwischen GUI und Applikation ausgetauscht werden können, funktioniert so etwas? Soll ich dann doch mit zwei verschiedenen Projekten arbeiten oder soll ein QT-projekt Teil eines C++-projekts sein? Wie würde so ein Interface aussehen? Und wie kann ich verhindern, dass das Programm so langsam ausgibt? Ich bräuchte eigentlich nur ein Anregungen, wie man so etwas angeht, wäre nett wenn ihr mir da weiterhelfen könntet.

Grüße,
Isa

Ach, ja, meine Daten: BS:Windows XP
MS VS C++ Net 7
QT 3.3.4
Das ist erstmal weniger eine Frage von Qt, sondern eher eine designtechnische Frage. Wenn du unbedingt zwei Projekte haben willst, dann könnte ich mir das Kommandozeilenprogramm eher als kompilierte Bibliothek (DLL / SO) vorstellen, die über eine definierte Schnittstelle von einer GUI-Applikation angesteuert wird, die du widerum mit Qt erstellst. Wenn möglich, solltest du dahingehend unbedingt auf Qt 4 umsteigen, da die neue Version einige Verbesserungen wie das Verwenden von Qt-Plugins u.s.w. mitbringt.
Isa
Beiträge: 32
Registriert: 10. April 2006 13:18

Beitrag von Isa »

Danke erst mal für deine Antwort. So wie ich dich verstehe, würdest du eher die QT Klassen mit in das C++-projekt einbeziehen und beides zusammenausführen, ist das richtig? Ich habe mir die Klassen vom C++-projekt auch noch einmal angesehen und bin zu dem Schluss gekommen, dass es wohl tatsächlich besser wäre beides in einem Projekt zu erstellen. Tut mir übrigens leid, ich war für die Frage wohl im falschen Forum.

Grüße,
Isa
Antworten