gui mit c++ eine qual
-
Hi,
schau Dir mal die neuen Turbo-C++ von CodeGear an. Freeware und gestattet kommerzielle Produkte herzustellen.
Damit ists wirklich einfach sehr gut funktionierende Oberflächen herzustellen. Sicher, nur für Windows, aber mal ehrlich, die wenigsten unter uns liefern Multiplattformprogramme.Gruß Mümmel
-
manu123 schrieb:
ich find die Winapi eigentlich ganz cool,
aber mir wird immer wieder abgeraten sie zu erlernen, weil sie nicht mehr weiterentwickelt wird und einen schlechten stil oder so hat.
Ich benutze eh nur Windows aber rentiert es sich noch Winapi zu lernen wenn sie eh bald stirbt?Die WinAPI wird noch weiterentwickelt, ist aber auch keine C++ GUI sondern eine C-Bibliothek (die man unter C++ verwenden kann). Aus C++ Sicht sehe ich die WindowsAPI tatsächlich als schlechten Programmierstil an (Hier unterscheiden sich die Paradigmen einfach, zudem mag ich keine Makrogeprägten Bibliotheken) - Aber niemand wird dich aufhalten sie zu verwenden (nur bitte dann Fragen in das WinAPI-Forum stellen).
Der Tot der WindowsAPI wurde schon häufig beschworen (Ich weiß nicht wann ich zu aller erst davon gehört hatte, aber ich glaube noch vor Windows 2000).
cu André
-
manu123 schrieb:
WxWidgets soll einfach nur scheiße sein ka warum.
GTKmm macht unter windows probleme und man muss die Dlls mitgeben
QT kostet was außer man gibt den source mit.Und da musst du dir halt selber ein Bild machen. Ich arbeite schon seit 3 Jahren mit wxWidgets, und bin recht zufrieden damit.
Du hast das lokale Look & Feel, und musst auch nicht die Dinge die wirklich etwas Uralt sind nutzen.
Schau dir doch einfach CodeBlocks an, da ist direkt ein Editor für wxWidgets dabei.GTK ist generell unter Windows problematisch afaik. Und die Namenskonvention, naja hat halt jeder seinen geschmack. *g*
QT ist afaik die Beste lib, aber wohl eher für Kommerzielles gut zu gebrauchen, wenn man entsprechenden Kundenkreis hat.
Oder man entwickelt unter der GPL.Zu GTKmm und wxWidgets findest du auch Tutorials im Magazin.
phlox
-
Ob sie bald stirb oder nicht, ist zweitrangig (sie wird es aber kurzfristig nicht). Es geht darum, das sie sehr umständlich zu benutzen ist, wenn man sie mit anderen APIs vergleicht. Du brauchst z.B. sehr viel C-Code um überhaupt ein leeres Fenster anzuzeigen. Wenn du dagegen eine moderne API benutzt, brauchst du dafür vielleicht zwei oder drei Zeilen C oder C++ Code.
Dann gibts da noch die Sache mit C oder C++. Willst du nicht lieber C++ machen? In deinem Titel steht immerhin "gui mit c++" und nicht "gui mit C". Die WinAPI ist eine C-API. Wenn man schon C++ lernt, sollte man vielleicht auch C++-APIs nutzen?
Mir ist jetzt aufgefallen das es da nur schotter gibt!
...
GTKmm macht unter windows probleme und man muss die Dlls mitgeben
QT kostet was außer man gibt den source mit.Ehm, will ja nichts sagen. Aber die Gründe etwas als Schrott zu bezeichnen, finde ich etwas weit hergeholt. Die Gründe sind alle legitim und eine Bewertung halte für falsch.
Was willst du denn genau? Ich stelle fest: 1. kostenlos und 2. statisches Linken.
Da fallen mir spontan FLTK 2 und FOX-Toolkit ein. FOX-Toolkit ist mächtig, ausgereift und vom C++-Design nicht schlecht. FLTK ist dagegen wirklich geschmackssache.
Wer dann immer noch nicht weiß, was er bei den vieeeelen GUI-Toolkits nehmen soll. Soll sich selber mit WinAPI bestrafen. :p
-
muemmel schrieb:
Sicher, nur für Windows, aber mal ehrlich, die wenigsten unter uns liefern Multiplattformprogramme.
Das mag sein, wenn man natürlich später mal das Betriebssystem wechselt ärgert man sich natürlich das man seine Programme wegwerfen kann. So ging es mir zum Beispiel. Naja, da muß man halt durch.
-
phlox81 schrieb:
GTK ist generell unter Windows problematisch afaik. Und die Namenskonvention, naja hat halt jeder seinen geschmack. *g*
Höre ich immer wieder, aber kann ich nicht nachvollziehen. GIMP, Gnucash und Inkscape (alles GTK oder gtkmm) laufen bei mir unter WinXP soweit ohne Probleme. Und das sind keine Pipifax-Anwendungen. Bugs gibts übrigens in jedem GUI-Toolkit.
Was man gtkmm vorhalten kann, ist das sie schon lange kein neues Win32-Release rausgebracht haben. Da müssen die tatsächlich mal in die Pötte kommen. Aber ansonst weiß ich echt nicht, was alle auf gtk bzw. gtkmm bzgl. Windows rummeckern?
-
ich gebe plox81 recht.
Code::Blocks (meiner meinung nach sowieso die beste IDE) + Wxwidgets.
Ist optimal, da hast du gleich deinen Rad editor mit dabei.
Außerdem kannst du mit wxWidgets statisch linken und es ist kostenlos.
Es ist zwar nicht das modernste C++ und die Macros sind zwar nicht so schön,
jedoch programmiert man das Programm für den Anwender oder nicht ;D?
Und der wird an mit wx widgets erstellten Fenstern sicher spaß haben, es ist schnell und schaut gut aus!
-
danke das find ich auch ganz gut.
Gibt es Code::Blocks auch auf deutsch?
Warum hat eine Hello world exe 25mb? also mit wxwidgets
-
manu123 schrieb:
danke das find ich auch ganz gut.
Gibt es Code::Blocks auch auf deutsch?
Warum hat eine Hello world exe 25mb? also mit wxwidgets- debug version
- monolithic gelinkt evtl.
-
phlox81 schrieb:
manu123 schrieb:
danke das find ich auch ganz gut.
Gibt es Code::Blocks auch auf deutsch?
Warum hat eine Hello world exe 25mb? also mit wxwidgets- debug version
- monolithic gelinkt evtl.Bei gcc werden sie so gross. Mit dem VC++ Compiler sind sie deutlich kleiner.
-
Stefan schrieb:
Bei gcc werden sie so gross. Mit dem VC++ Compiler sind sie deutlich kleiner.
Ein bisschen zumindest. Also, wie schon erwähn, musst du die Debug-Symbole aus der .EXE entfernen (Stichwort: strip/strip --strip-unneeded). Eine Andere Möglichkeit hast du bei wxWidgets noch:
Du compilierst die Biliothek selber und compilierst nur die Dinge, die du wirklich brauchst. Dafür musst du vor dem compilieren, die
setup.h
-Datei bearbeiten. Gerade der TIFF-Datei Support benötigt in der .EXE viel Platz, auch wenn du ihn garnicht benutzt. Das liegt ein bisschen an dem Aufbau von wxWidgets, dass der Linker bestimmte teile nicht außen vor lassen kann, obwohl sie nicht gebraucht werden.Siehe dazu: http://wiki.wxwidgets.org/Reducing_Executable_Size
Das ist aber ein Problem, dass dich im Moment nicht stören sollte. Wenn du später dein Programm verteilst, kannst du dich daran setzen, die .EXE-Datei klein zu kriegen.