Welche GUI für Linux _und_ Windows?



  • Artchi schrieb:

    GTKmm unter Windows ist der Horror. 👎

    Ein paar Stichworte dazu vielleicht?



  • phlox81 schrieb:

    GTKmm ist eine C++ Wrapper libary um GTK,welche sich imho auch statisch Linken lässt. GTKmm ist sehr gut
    Objektorientiert aufgebaut.phlox

    Es lässt sich eigentlich nicht statisch linken und das ist von der Lizenzierung scheinbar auch gar nicht erst erlaubt.

    @Artchi

    Ich wüsste nicht was da Horror bei GTKmm sein sollte. Es hat ein paar mankos ok. Aber ich würde es nicht als Horror bezeichnen. WinAPI ist Horror. 😉

    Pro GTKmm:
    - OS Unabhänig Mac, Win, Linux/Unix und BSD-Systeme
    - UTF-8 unterstützung => Multilanguagesupport
    - libglademm => Weniger arbeit bei Änderungen der GUI, bessere wartbarkeit, generell besser als selber schreiben. ( Trotzdem sollte man anfangs drauf verzichten )
    - zum größtenteil sehr STL-ähnliches interface was die verwendung mit der STL und der StandardLibrary stark vereinfacht.
    - Gut durchdachtes, und sehr flexibles Design

    Contra GTKmm:
    - Geschwindigkeit unter Windows lässt sehr zu wünschen übrig
    - Bei Fehlern tauchen plötzlich Konsolenfenster auf ( Kennt der eine oder andere sicher von DIA und/oder GIMP )
    - teilweise etwas kompliziert (z.b. Verwendung von Gtk::TreeView )

    Edit: Eventuell habe ich den einen oder anderen Punkt verpasst. Aber es wäre nice wenn ihr eure Erfahrung auch mal so mit anderen Widgetslibraries darstellt. Damit man sich ein Bild davon machen kann.

    BR



  • Ich habe gesagt: Horror _unter_ WINDOWS!

    Hat nichts mit dem Klassen-Design o.ä. zu tun. Und wir haben es hier schon mehrmals durch gekaut: es gibt keine offizielle Windows-Version, folglich ist der Win-Support miserabel, man muß sich einen Wolf suchen um die Win-Version im Netz zu finden, man schafft es als Entwickler nicht mal korrekt die Developer-Distribution (wenn man sie endlich gefunden hat) zu installieren. Fazit: funktioniert einfach nicht.

    Und nein, ich bin nicht der einzige, ein paar andere User haben es auch nicht geschafft.

    Die Verbohrtheit der Anti-Windows-Fraktion (Gtk-Team) scheint die Win-Version mehr oder weniger zu dulden, alles andere ist denen egal.

    Und bevor man sich als Programmierer mit sowas rumschlägt, empfehle ich wxWidgets. Da kommt man wenigstens schnell zu ersten Ergebnissen.



  • @Artchi:

    Ich hab keine Probleme damit gehabt bisher. Zumindest nicht unter Windows. Das einzige Problem das es gibt liegt an Visual C++ 2003 dessen Compiler einen Bug hat.

    Kann man auf http://www.murrayc.com/blog/2004/Nov/17
    unter anderem nachlesen ( die seite des Maintainers von GTKmm )
    bzw bei bugzilla: http://bugzilla.gnome.org/show_bug.cgi?id=158040

    Und wie kommst du eigentlich darauf das man sich einen Wolf sucht bis man den Installer findet? Der Link ist auf der www.gtkmm.org download seite zufinden

    http://www.gtkmm.org/download.shtml

    Und was erwartest du denn genau an Support? Eventuell das jemand den Bug in Microsofts Compiler behebt? Oder was meinst du genau?

    Was ist denn an der Installation so schwer wenn ich mal fragen darf?
    Das installiert man wie jede andere Installation auch. Und die paar Pfade zu setzen die man includen muss, ist das so schwer?

    Falls ja benutz DevC++ und benutze meinen Template Installer und schon hast du dann keine Sorgen mehr.

    Ich würde mich einfach mal richtig informieren. Und in meinen Augen ist die GTKmm version für Windows keineswegs inoffiziell. Zumindest wäre mir das neu.

    Vielleicht sollten wir eine solche Diskussion auch nicht ganz so agressiv führen da dies dann nur in geflame ausartet. Und das wollen wir doch nicht etwa?

    BR 😉

    Edit: GTKmm Template Installer für DevC++



  • Konrad schrieb:

    Das ist immer so eine Sache mit Gtk und Windows. Insbesondere mit GTKmm.
    Zum Programmieren ist es schön aber unter Windows lässt es sich nicht gescheit installieren und offiziellen Support gibt es auch nicht.

    cppcluster schrieb:

    [...]Aber ich möchte die/das GUI direkt in das Programm einkompilieren, also nicht vorher noch irgendwas installieren.[...]

    Oder meinst du, das (Entwickler-)Programm, damit man das Programm erstellen kann?

    Artchi schrieb:

    [...]Wobei wxWidgets auch für ClosedSource kostenlos ist, und somit mein pers. Favorit ist, wenn man kein Geld für Qt hat. [...]

    Also kann ich auch Qt ausschließen, da das Programm ClosedSource wird. Und Geld geb ich mit 13 sicher nicht für sowas aus ;).

    Artchi schrieb:

    [...]man muss sich einen Wolf suchen um die Win-Version im Netz zu finden, man schafft es als Entwickler nicht mal korrekt die Developer-Distribution (wenn man sie endlich gefunden hat) zu installieren. Fazit: funktioniert einfach nicht.

    Welche Version? Die zum Programmiren, oder die man installieren muss, damit das fertige Programm funktioniert (falls 2tes, dann kann ich das auch noch ausschließen) (GTK)

    Fazit: wxWidgets oder evtl. GTKmm.
    GTKmm:

    evilissimo schrieb:

    Geschwindigkeit unter Windows lässt sehr zu wünschen übrig

    So, fertig mit den Quoten 😃

    Kann mir wer n paar Nachteile von wxWidgets sagen? Oder wie und warum das besser im Gegensatz zu GTKmm ist.

    Vielen Dank im Voraus
    mfG, Andreas

    //EDIT1: Warum wird Vor*raus zensiert? (ohne 😉
    //EDIT2: Nochmal Testen..
    //EDIT3: mit einem 'r'
    😃



  • An sich ist das Gtkmm von den C++ GUIs imho am schönsten zu programmieren und unter Linux auch nicht das Problem. Aber wie schon mehrmals gesagt wurde, unter Windows macht es echt keinen Spaß! Hab das 2.2 API mit dem MinGW und der msys shell unter Windows recht gut am Laufen gehabt, da es mir ein Kumpel in mühevoller Kleinarbeit zusammengesucht hat (er hat's selber auch gebraucht). Seit der neuen Version haben wir uns noch nicht rangewagt.

    Anyways, zusätzlich zu der echt ätzend zu benutzenden TreeView/ListView ist das Erstellen von Menüs (im 2.4 API) auch nicht gerade vorteilhaft gestaltet worden.
    Ansonsten ist das gtkmm aber echt gut, keine Macros, schönes Klassendesign und spitzen Doku!!

    Ich habe aber momentan das Gefühl keine C++ GUI zur Verfügung zu haben die gutes OO-Design vorweisen kann und unter Windows und Linux problemlos läuft. 😞
    Möglicherweise bin ich von Swing aber auch verwöhnt, denn das ist meiner Meinung nach die am besten zu programmierende GUI, aber eben Java.



  • @GPC

    Die 2.4.x Versionen sind dank http://www.pcpm.ucl.ac.be/~gustin/win32_ports/
    kinderleicht zu installieren. Und die Pfade einzustellen ist eigentlich auch ganz einfach. Aber wie gesagt dafür gibts meinen Template installer.

    BR



  • GPC schrieb:

    An sich ist das Gtkmm von den C++ GUIs imho am schönsten zu programmieren und unter Linux auch nicht das Problem.

    Programmiert wird eh unter Linux, aber das Programm muss dann auch auf Windows gestartet & ausgeführt werden.

    Und das wxWidgets/GTKmm - hat das einen WYSIWYG-Editor? (Stell mir das etwas kompliziert vor wenn ich bei allem x,y,höhe,breite angeben muss...)

    mfG, Andreas



  • Für GTKmm gibt es Glade. Da GTK+ von Haus aus eigentlich nicht mit Größenangaben und absoluten Positionen arbeitet macht dies Glade natürlich auch nicht. Ausserdem ist es empfehlenswert libglademm zu benutzen da man auch Änderungen an der GUI vornehmen kann ohne das man eine Zeile Quellcode ändern muss oder die Anwendung neucompilieren muss. Das hängt natürlich auch von der Art der Änderung ab. Aber wenn man z.b. etwas hinzufügt/ändert wofür man keinen Code braucht. Z.b. ein Icon oder ein festes Label ändern/hinzufügen.
    Ausserdem spart man auch einiges an Code den man schreiben muss.

    BR



  • hi!

    was das an den start kriegen von GTKmm angeht muss ich evilissimo recht geben!
    wenn mans so macht wie ers hier beschrieben hat, läufts scheinbar problemlos...
    (template kompiliert sich und läuft.., gerade eben probiert!)

    (ich verwende dev_c++-IDE..)

    mal sehen wie man damit so arbeiten kann...

    mfg
    daniel



  • evilissimo schrieb:

    @GPC
    Die 2.4.x Versionen sind dank http://www.pcpm.ucl.ac.be/~gustin/win32_ports/
    kinderleicht zu installieren. Und die Pfade einzustellen ist eigentlich auch ganz einfach. Aber wie gesagt dafür gibts meinen Template installer.
    BR

    Woah, das ist aber mal fett, und wir hatten so eine Arbeit mit dem zusammensuchen der Pakete, alle Achtung. Das werd ich mir mal reinziehen. Vielen Dank.



  • cppcluster schrieb:

    Und das wxWidgets/GTKmm - hat das einen WYSIWYG-Editor? (Stell mir das etwas kompliziert vor wenn ich bei allem x,y,höhe,breite angeben muss...)

    wxWidgets ist nur eine Bibliothek. Allerdings gibt es freie und kommerzielle Programme die das machen. Zum Beispiel wxGlade wäre ein freier "WYSIWYG"-Editor (wenn man bei nicht auf jeder Platform gleich aussehenden Widgets davon sprechen kann 😉 ). Hat zwar selber keine Hochglanz GUI allerdings alles was man braucht, kann man als Vorteil wie auch als Nachteil sehen.


Anmelden zum Antworten