WinAPI GUI Designer für C++?
Verfasst: 11.07.2009 21:08
Hier kommt eine evtl. etwas dumme Frage, aber das liegt dann einfach daran, daß ich mit Programmierung unter C/C++ noch nicht zu tun hatte.
Um in C++ reinzuschnuppern habe ich mir entsprechende Fachliteratur zugelegt und mir vor ein paar Tagen die wxDev-C++ Entwicklungsumgebung installiert. Für die Übungen in dem Buch ist diese Freeware völlig ausreichend.
Meine Frage bezieht sich auf den Bereich der GUI-Erstellung für Windows Applikationen unter C/C++.
Da C/C++ von Haus aus nichts mit GUIs zu tun hat, muß man entweder auf die native API des Betriebsystems zugreifen (WinAPI) oder sich eines entsprechenden Frameworks/Toolkit/wieauchimmermanesnennt bedienen. Soweit glaube ich das begriffen zu haben.
Ich habe mir auch noch keine sonderlichen Gedanken gemacht, als ich feststellte, das es haufenweise solcher GUI-Frameworks gibt. Der wxDev-C++ ist ja sogar von Haus aus auf die wxWidgets ausgelegt und hat einen eigenen Form Designer dafür.
Allerdings hat mich spantan der Brechreiz überflutet, nachdem ich ein "Hello World" im Windows Fenster compiliert hatte.
Die Exe hatte über 3 MB. Nach Einschalten von Compiler-Optimierungen "Nur" noch 2,5 MB.
Das selbe "Hello World" unter Benutzung der nativen WinAPI von Windows hat dagegen die "immense Größe" von 7 KB.
Ich kann verstehen, daß diese Frameworks viele Vorteile haben. Sie kapseln die WinAPI (die in C geschreiben ist) in objektorientierten Klassen, die sich in C++ einfügen, manche sorgen für Platformunabhängigkeit (wxWidget z.B.) oder erweitern die GUI-Elemente um neue gadgets. Andere Pakete liefern gleich ganze Bereiche als gekapselte C++ API mit (Netzwerk, Memory, Filesystem, usw...)
Alles schön und gut - bei einem Programm wie Photoshop ist es vielelicht auch egal, wenn das GUI-Framework mal eben 3 MB Overhead erzeugt, aber für kleine Tools ist das mehr als oversized.
So, nun kann ich mir vorstellen, daß auch schon zu "C-Zeiten", als die Windows API enstanden ist, niemand gern die GUI seines Programms per Texteditor gebaut hat. Daher frag ich einfach mal ganz naiv: Kennt jemand einen GUI-Editor, der auf die WinAPI ausgelegt ist und C oder C++ Code ausspuckt, der nur das wiederspiegelt, was man im GUI Designer zusammengeklickt hat?
Also eigentlich so wie der Visual Designer von PB oder PureFORM von Gnozal.
Diese C/C++ Frameworks haben offensichtlich einen Haufen Funktionen dabei, die alle mitkompiliert werden, die man aber für seine Minianwendung nicht braucht.
Aber wie gesagt... das ganze ist vielleicht auch nur ein Verständnisproblem, weil ich keien C/C++ Erfahrung habe.
Nach etlichen Stunden googlen und surfen zu diesem Thema bin ich nur noch mehr verwirrt als vorher. So gibt (gab) es z.B. die MFC von Microsoft. DIe "geht" wohl aber nur, wenn man mit Visual C/C++ von M$ arbeitet. Borland hat dann wieder eine eigene Library...
Das ist ja echt verwirrend... neben der eigentlichen Programmiersprache muß man sich noch für ein GUI-Framework entscheiden und dessen API lernen. Und wehe man muß dann mal einen Source bearbeiten, der mit einem anderen Framework erstellt wurde. Wirre Welt...
So, nu hab ich nen halben Roman geschrieben, dabei wollt ich nur nach nem WinAPI GUI-Designer fragen.
Um in C++ reinzuschnuppern habe ich mir entsprechende Fachliteratur zugelegt und mir vor ein paar Tagen die wxDev-C++ Entwicklungsumgebung installiert. Für die Übungen in dem Buch ist diese Freeware völlig ausreichend.
Meine Frage bezieht sich auf den Bereich der GUI-Erstellung für Windows Applikationen unter C/C++.
Da C/C++ von Haus aus nichts mit GUIs zu tun hat, muß man entweder auf die native API des Betriebsystems zugreifen (WinAPI) oder sich eines entsprechenden Frameworks/Toolkit/wieauchimmermanesnennt bedienen. Soweit glaube ich das begriffen zu haben.
Ich habe mir auch noch keine sonderlichen Gedanken gemacht, als ich feststellte, das es haufenweise solcher GUI-Frameworks gibt. Der wxDev-C++ ist ja sogar von Haus aus auf die wxWidgets ausgelegt und hat einen eigenen Form Designer dafür.
Allerdings hat mich spantan der Brechreiz überflutet, nachdem ich ein "Hello World" im Windows Fenster compiliert hatte.
Die Exe hatte über 3 MB. Nach Einschalten von Compiler-Optimierungen "Nur" noch 2,5 MB.

Das selbe "Hello World" unter Benutzung der nativen WinAPI von Windows hat dagegen die "immense Größe" von 7 KB.
Ich kann verstehen, daß diese Frameworks viele Vorteile haben. Sie kapseln die WinAPI (die in C geschreiben ist) in objektorientierten Klassen, die sich in C++ einfügen, manche sorgen für Platformunabhängigkeit (wxWidget z.B.) oder erweitern die GUI-Elemente um neue gadgets. Andere Pakete liefern gleich ganze Bereiche als gekapselte C++ API mit (Netzwerk, Memory, Filesystem, usw...)
Alles schön und gut - bei einem Programm wie Photoshop ist es vielelicht auch egal, wenn das GUI-Framework mal eben 3 MB Overhead erzeugt, aber für kleine Tools ist das mehr als oversized.
So, nun kann ich mir vorstellen, daß auch schon zu "C-Zeiten", als die Windows API enstanden ist, niemand gern die GUI seines Programms per Texteditor gebaut hat. Daher frag ich einfach mal ganz naiv: Kennt jemand einen GUI-Editor, der auf die WinAPI ausgelegt ist und C oder C++ Code ausspuckt, der nur das wiederspiegelt, was man im GUI Designer zusammengeklickt hat?
Also eigentlich so wie der Visual Designer von PB oder PureFORM von Gnozal.
Diese C/C++ Frameworks haben offensichtlich einen Haufen Funktionen dabei, die alle mitkompiliert werden, die man aber für seine Minianwendung nicht braucht.
Aber wie gesagt... das ganze ist vielleicht auch nur ein Verständnisproblem, weil ich keien C/C++ Erfahrung habe.
Nach etlichen Stunden googlen und surfen zu diesem Thema bin ich nur noch mehr verwirrt als vorher. So gibt (gab) es z.B. die MFC von Microsoft. DIe "geht" wohl aber nur, wenn man mit Visual C/C++ von M$ arbeitet. Borland hat dann wieder eine eigene Library...

Das ist ja echt verwirrend... neben der eigentlichen Programmiersprache muß man sich noch für ein GUI-Framework entscheiden und dessen API lernen. Und wehe man muß dann mal einen Source bearbeiten, der mit einem anderen Framework erstellt wurde. Wirre Welt...
So, nu hab ich nen halben Roman geschrieben, dabei wollt ich nur nach nem WinAPI GUI-Designer fragen.
