GUI nutzen: Beginnerthread
-
Hallo,
so euch beiden nochmals vielen Dank, besonders an TSO. Die Seite ist wirklich sehr gut.Ok, dass meine IDE veraltet war, wusste ich gar nicht. Habe mir also deine empfohlene IDE zugelegt, also Visual C++ 2008 Express.
Diese ist ja kostenlos oder? Ich habe am Ende was von einer aktivierung gelsen. Muss ich die Software aktivieren?
So nun zu den GUI Libs:
Habe mir die Seite durchgelesen. Was für eine Lib. würdet ihr mir empfehelen. Ihr kennt euch ja etwas besser damit aus. Welche nutzt ihr und warum?Vielen Dank für eure Hilfen
-
Diese ist ja kostenlos oder? Ich habe am Ende was von einer aktivierung gelsen. Muss ich die Software aktivieren?
Ja, sie ist kostenlos und man darf auch damit kommerzielle Software entwickeln. Die Registrierung/Aktivierung ist auch kostenlos. Man bekommt dann glaube ich Zugang zu zusätzlichem kostenlosen Material (Icons usw.). Wenn Du das nicht willst, kannst du bei MS auch eine Offline-Variante als ISO-Image runterladen.
So nun zu den GUI Libs:
Habe mir die Seite durchgelesen. Was für eine Lib. würdet ihr mir empfehelen. Ihr kennt euch ja etwas besser damit aus. Welche nutzt ihr und warum?Hem, ich habe dir die Seite extra gepostet, damit wir uns vor der Empfehlung drücken können. Es ist eigentlich fast egal welche man benutzt, alle haben ihre Vor- und Nachteile. Es gibt keine perfekte Library. Du mußt doch wissen, was für DICH wichtig ist. Du mußt damit arbeiten und mit dem Ergebnis zufrieden sein. Z.B. will der eine unbedingt, das die GUI-Library seeeehr klein ist. Dann fallen schon mal so Kandidaten wie gtkmm raus. Dafür sind dann FOX und FLTK zu empfehlen. Aber dann ist dem nächsten FLTK vom Aussehen her zu schlicht. Dann muß man was anderes nehmen. Dann gefällt einem die Lizenz nicht... usw. usf.
Bsp.: Qt ist z.B. nur kostenlos, wenn du GPL-Software entwickelst. Kann für den einen oder anderen ein K.O.-Kriterium sein. Dem anderen ist das egal, der zahlt halt 1000 EUR für Qt, weil er eh kommerzielle Software entwickelt.
Irgendwann muß man dann eine nehmen und dafür Kompromisse eingehen, mit denen man leben kann.
Die von mir gepostete Seite führt alle wichtigen Unterschiede auf. Und alle dort genannten Libraries sind ernsthaft nutzbar.
-
Ok dann stelle ich mal meine Anforderungen nach Prioritäten, vllt. können wir dann für mich gemeinsam eine raussuchen^^ Wäre echt super.
1. Sie sollte auf jeden Fall kostenlos sein.
2. Ich muss die damit gecodete Software weitergeben können egal ob kommerziell oder nicht (kommerziell habe ich jetzt nicht vor, aber will dann auch gerne bei einer bleiben).
3. Es sollte auch ein Tool dabei sein.
4. Ideal wäre natürlich etwas plattform unabhängiges.
5. Wie besagt wären Tutorials nicht schlecht ob englisch oder deutsch ist egal.So der Rest sollte erstmal keine große Rolle spielen.
Dann noch was zu Aktivierung/Registration: Du hast ja geschrieben die ist kostenlos, aber ich kann die ruhig ohne Bedenken machen? Habt ihr euch auch geregt oder die Offline Variante bezogen?
-
Habe meine Anforderungen mal mit der Liste verglichen: gtkmm Das scheint für mich gut geeignet oder?
/Offtopic: Sollte mich hier mal anmelden^^
-
Ja, gtkmm ist ein guter Kandidat für deine Anforderungen. Die Dokumentation dazu ist auch eine von den besseren und es wird auch sehr gut beschrieben, wie man es für VisualC++ einrichtet.
Zur Registrierung: nach der Registrierung wird nichts schlimmes passieren. Bist halt bei MS nur als VC++-Nutzer registriert. Ob du das machst: deine Entscheidung!
-
Fragender001 schrieb:
2. Ich muss die damit gecodete Software weitergeben können egal ob kommerziell oder nicht (kommerziell habe ich jetzt nicht vor, aber will dann auch gerne bei einer bleiben).
Meines Erachtens ist es nicht so wichtig, wenn man erstmal es erlernen will.
Die Toolkits sind vielfach ähnlich aufgebaut.3. Es sollte auch ein Tool dabei sein.
4. Ideal wäre natürlich etwas plattform unabhängiges.
5. Wie besagt wären Tutorials nicht schlecht ob englisch oder deutsch ist egal.GTKmm ist imho nur dann eine gute Wahl, wenn deine Plattform hauptsächlich Linux ist.
Auf Windows ist GTK nicht sehr stark vertreten, und der Standard Skin sieht einfach wie von Vorgestern aus.
Zu dem muss man wenn es nicht in GTKmm vorhanden ist, auf C, also GTK
zurückgreifen, was ich unschön finde. GTKmm ist letzten Endes nur ein C++ Wrapper um ein C Toolkit, wenn auch ein wirklich guter.wxWidgets erfüllt auch jede Anforderung, und verwendet unter Linux ebenfalls GTK. Einziges Manko an wxWidgets ist, es verwendet nicht ganz so modernes C++ wie z.B. GTKmm, was aber auch am Alter von 12 Jahren mit liegt. Deshalb gibts zur Zeit zum Beispiel keine wxWidgetsklassen die Templates nutzen. Auch exsistiert leider kein eigener Namespace.
phlox
-
Was soll denn heißen, das GTK(mm) nicht auf Windows vertreten ist? Ich habe schon mal in diesem Forum gefragt, das man mir doch bitte eine Erklärung für abgibt. Nichts gekommen, nur leere Behauptungen.
Ich weiß nur eines: GIMP (welches nun wirklich GTK+ bis zum Erbrechen nutzt) funktioniert bei mir unter Windows wuuuunderbar. Und der Skin sieht nicht wie von vorgestern aus, sondern so wie ich ihn in Windows einstelle. Denn GTK passt sich dem Look an.
Auch andere Programme, wie Gnucash (GTK+) und Inkscape (gtkmm), laufen unter Windows ohne Probleme.
-
Denn GTK passt sich dem Look an
Widerspreche ich. Es ist nicht nativ und sieht auch nicht so aus.
Und natürlich läuft GTK unter Windows, genauso wie andere Toolkits.
Der Nachteil ist wirklich das Theme. Wenn eine Anwendung aber nicht das gewohnte Look and Feel der Platform verwendet, werden viele Anwender das Programm nicht verwenden.
wxWidgets verwendet immer native Controls wo immer möglich. GTK zeichnet afaik eigene. QT bietet auch ein natives LNF, allerdings unter Windows nur mit einer OpenSource-Lizenz verfügbar ( was mich jetzt nicht stört).
Einziges Manko an wxWidgets ist, es verwendet nicht ganz so modernes C++ wie z.B. GTKmm, was aber auch am Alter von 12 Jahren mit liegt. Deshalb gibts zur Zeit zum Beispiel keine wxWidgetsklassen die Templates nutzen. Auch exsistiert leider kein eigener Namespace.
Ich seh es nicht als Manko, sondern als Vorteil. Es ist schön und einfach damit zu programmieren und es gibt viele Tools wie wxFormbuilder (GUI-Builder) oder poEdit ( Übersetzung) u.a. die sich mit wxWidgets toll ergänzen und auch damit geschrieben wurden. Auch die Doku und die zahlreichen Samples sorgen für einen schönen Einstieg.
Es gibt im Netz einige Artikel darüber, wie sich der Look and Feel auf den User auswirkt und warum immer das native bevorzugt werden sollte. Einfach danach googlen. Wobei es mMn auf die Zielgruppe ankommt. Ein Profi-Programmierer wird sich eher an ein Programm gewöhnen das nicht nativ aussieht als ein 08/15 User.
Nur meine 2 Bytes dazu, weil hier @ Arbyte grade nix los is.Aber probier doch einfach beide aus und schau, welches dir besser gefällt. Lizenztechnisch ist wxWidgets sehr frei.
rya.
-
Scorcher24 schrieb:
Widerspreche ich. Es ist nicht nativ und sieht auch nicht so aus.
Und natürlich läuft GTK unter Windows, genauso wie andere Toolkits.
Der Nachteil ist wirklich das Theme. Wenn eine Anwendung aber nicht das gewohnte Look and Feel der Platform verwendet, werden viele Anwender das Programm nicht verwenden.Und? War das für den Fragesteller dieses Thread wichtig? Nein! Damit ist eigentlich euer angebliches Gegenargument irrelevant. In der GUI-Tabelle steht eindeutig, das gtkmm keine nativen Widgets hat. Und damit "lebt" der Fragesteller. Dann kommt ihr, und übertragt eure persönlichen Ansprüche auf die des Fragestellers. Warum? Er hat eindeutig seine wichtigsten Pros genannt. Und da stand nix von nativen Widgets.
Aber zu behaupten, das GTK sich nicht an den look anpasst, ist schlicht gelogen! Es ist kein natives Look&Feel, aber der Look wird im Backbuffer von den orig. Win32-Controls kopiert.
-
Es wurde nach Empfehlungen gefragt, das ist sowas wie eine Meinung. Und ich erlaube mir, meine eigene zu haben.
Ich habe dargelegt, warum ich diese habe und es ist nicht deine Aufgabe, es in Frage zu stellen, warum ich diese hier schreibe oder nicht.
rya.
-
Hallo,
wie gesagt ist ja nur der Anfang und wenn diese alle sich ähneln, dann beginne ich einfach mal mit einem.
Meine Entscheidung fiel auf gtkmm, damit probiere ich erst einmal rum^^
Danke euch allen. So für alle die das selbe Problem wie ich haben und so wie ich entscheiden:Zuerst: http://www.c-plusplus.net/forum/viewtopic-var-t-is-162554.html
Die Datei bekommt man hier:
GTK+ : http://sourceforge.net/project/showfiles.php?group_id=98754&package_id=111411&release_id=592702
Aber wenn ich das oberste runterlade, kommt schon beim vorbereiten ein Fehler, dass eine Datei nicht beschrieben werden konnte.
Kann mir nochmal jemand helfen?Nachdem ich dann Thread 1 gemacht habe, aheb ich auch den Thread gefunden:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-165460.html
Aber ich scheiter noch an dem Installer
-
Die Installation müsste eigentlich ganz einfach funktionieren. Haste auch Admin-Rechte zum Installieren?
Mein Tip:
http://www.gtkmm.org/docs/gtkmm-2.4/docs/tutorial/html/chapter-msvc.htmlHinweis: Das PlatformSDK ist schon beim VC++2008 dabei. Die Anleitung ist noch für VC++2005, wo man das PSKD extra installieren mußte.
-
Habe die URL geöffnet. Und die File runtergeladen (Link zum GTK+ geht ned)
Habe also die GTK development Version 2.12 runtergeladen.
Wollte das installieren: Kommt: Error writeing to file....op1.iniJa habe Adminrechte.
Das nächste PRobleme: Da steht man brauch die selben Versionen von GTkmm gibet aber nur auf dem Link der Seite bis 2.10Wäre super wenn du das gerade mal selber testen könntest, ob es an mir liegt oder nicht
-
Hem, ich habe hier schon gtkmm-devel 2.4 installiert. Nochmal mache ich das nicht.
Hier gibts Infos, Installer und Setup-Infos, die es genauer beschreiben:
http://live.gnome.org/gtkmm/MSWindowsWichtig:
Both packages contain the GTK+ runtime and its dependencies, and the development package also contains GTK+ header files, import libraries and documentation. You don't need to install anything else to use the packages.
GTK+ brauchst du also nicht runter laden! Hauptsache das gtkmm-devel.
-
*lol* das mir nun peinlich. War zu wenig Platz auf der C Partition^^
Ok habe das alles installiert
und bis updating alles auf der seite befolgt, das darunter mit den restributibales aber noch nicht. reicht das oder muss ich das mit den restributabels oder wie man die schreibt auch noch machen?Verstehe dann nicht wo bzw. wie ich das machen soll.
Glade hat der auch installiert, aber finde ich nirgends
-
Wie der Name sagt, braucht man die Redistributions, wenn man seine Software distributieren will... sprich verteilen will. Wenn du dein fertiges gtkmm-Programm einem Kumpel geben willst, braucht er ja auch gtkmm (so wie wenn er DirectX bräuchte, wenn du ein DirectX-Programm machst).
Also muß er gtkmm-runtime in der entsprechenden Version installieren (gtkmm-devel ist nur für Entwickler). Das ist das einfachste für dich, weil du ihm nur die EXE geben brauchst.
Zum Programmieren brauchst du einfach nur die devel-Installation. Für gewöhnlich findet man Glade im Start->Programme->Gtk+. Auf der gtkmm-docu und in dem letzten Link von mir, ist beschrieben, wie man gtkmm in MSVC2005 einrichtet.
Mir ist noch eingefallen, das man nun hoffen kann, das MSVC2008 die 2005er Libs "versteht", was leider nicht der Fall sein muß. Compiler unterschiedlicher Versionen müssen die Binaries nicht "verstehen". Aber wenn du Glück hast, kannste MSVC2008 damit benutzen.
-
Sag mal bescheid, ob dein erstes Progrämmchen mit MSVC2008 und gtkmm funktioniert. Mich würde die Binary-Kompatibilität interessieren (habe hier "nur" MSVS2005).
-
Habe danach mal ausprobiert von GTKmm eine demo zu testen und er sagt, dass er das nicht debuggen kann wegen irgend nem binär... xD klinckt man aber auf ignoerieren, so fürht er es aus^^Also geht es oder nicht?
Habe mich geregt, aber habe auch gesehen, dass meine Uni uns durch einen Vertrag Visual Studio 2008 zur Verfügung stellt, also ohne Express. Ist das besser?
Edit:
1. Wie macht man das mit den Restribut. Dateien?2. Glade habe ich nun installiert und zu MSVC++ als externes Tool hinzugefügt.
Wenn ich eine Glade Datei öffne, erscheint ein XML-Code. Wie nutze ich den dan in Glade bzw. wie kann ich den direkt in den Code einbetten. ICh glaube, dass ich das gleich geschafft habe^^
-
Habe danach mal ausprobiert von GTKmm eine demo zu testen und er sagt, dass er das nicht debuggen kann wegen irgend nem binär... xD klinckt man aber auf ignoerieren, so fürht er es aus^^Also geht es oder nicht?
Funktioniert es denn? Ich kanns nicht ausprobieren. Kann halt nur nervig sein, immer diesen Dialog weg zu klicken. Notfalls die gtkmm-libs selber bauen. Weiß aber nicht, wie einfach das ist (ob die entsprechenden Projektdateien dabei sind).
Hast du es denn selber kompiliert? Du mußt doch erkennen, ob das Demoprogramm sauber läuft. Selber entscheiden und feststellen! Das gehört ja wohl mit zum Informatiker dazu.
Habe mich geregt, aber habe auch gesehen, dass meine Uni uns durch einen Vertrag Visual Studio 2008 zur Verfügung stellt, also ohne Express. Ist das besser?
Naja, das Studio an sich wird dir in deinem speziellen Fall keine Vorteile bringen. Weil die Express erstmal als einzigen Nachteil hat, das man sie nicht mit Plugins erweitern kann. Und diese wiederrum kosten eh Geld. Bevor ich mir nochmal Studio installiere, würde ich vielleicht die 2005er Express installieren, falls es mit der 2008er Probs gibt. Aber ich selber kann das nicht sagen, weil ich hier 2005er habe.
Wenn die Glade.exe nicht auf deinem PC ist, mußt du es halt separat installieren.
-
Habe gerade meinen Beitrag editiert. Ja die Demo läuft und das wegklicken stört mich ned, weil man den Dialog deaktivieren kann^^
P.S.: Falls es so rüber kommt, studiere aber kein Informatik. Denke dann wäre das alles einfacher für mich^^