
Gerold Penz schrieb:
maillist@moevy.net schrieb:
ich beschäftige mich seit einigen Wochen schon mit Python. Nun suche ich eine grafische Oberfläche. Welche ist denn sehr gut Dokumentiert? wxpython ist leider nur sehr mau dokumentiert.
Da stellst hier ein Glaubensfrage.
Stattgegeben. Trotzdem, ich habe noch niemanden kennengelernt, der auf Qt umgestiegen ist und danach dann wieder etwas anderes benutzt hat (zumindest nicht aus freien Stücken).
pyQT - scheint nicht schlecht zu sein, aber sobald du für dein Programm auch nur einen Cent bezahlt bekommen möchtest, will Trolltec Geld. Und das nicht wenig.
Ansichtssache. Eigentlich sind die Preise doch recht moderat. Und wer wirklich nur einen Cent verdienen möchte, der sollte sich vielleicht überlegen, ob es das dann überhaupt wert ist...
TkInter - einfach und wird meist mit Python mitinstalliert. Leider sind die Möglichkeiten mit TkInter recht eingeschränkt. Einfache Oberflächen sind kein Problem, aber wenn es mehr sein sollte, würde ich es nicht nehmen.
Das ist klar der Vorteil: Überall installiert. Das war's dann aber auch schon. Insbesondere fehlt die WYSIWYG Erstellung von Oberflächen. Bei allem, was von der Komplexität her über ein "Hallo Welt!" hinaus geht, wird so etwas ziemlich schnell unersetzlich. Oberflächen wachsen, nicht vergessen!
pyGTK - in Ansätzen, einfach zu programmieren. Die Dokumentation ist spitze. Aber, es fehlen ein paar Dinge, wie z.B. ein Grid-Widget. Es wurde dem TreeView-Widget sehr viel Macht verliehen. Man kann damit fast alles machen wie z.B. eine Listenansicht, oder eine Baumansicht... Leider gibt deshalb aber auch kein *einfaches* Listen-Widgets oder ein *einfaches* TreeView-Widget. MDI-Fenster sind mit GTK nicht oder nur schwer zu erstellen. (GTK war bis jetzt mein Favorit.)
Ich habe PyGTK ausprobiert und bin (trotz 15 Jahren Programmiererfahrung, auch in vielen GUI-Sprachen) an den TreeViews gescheitert. Die sind dermaßen kompliziert, dass es für mich weniger Aufwand war, danach Qt zu lernen, als GTK-TreeViews einzusetzen. So bin ich überhaupt erst zu Qt gekommen. Größter Nachteil von GTK aber: Die Aufteilung in x Einzelbibliotheken, deren verschiedene Versionen alle untereinander inkompatibel sind. Pango ist noch das furchtbarste. Ich habe unter Linux noch nie mit einer Bibliothek dermaßen viele Probleme gehabt wie mit Pango. Ein Update und alle GTK-Anwendungen sind tot. Dann heißt es nachschauen, welche Bibliotheken mit welchen kompatibel sind, um wieder ein lauffähiges System zusammenzustellen (also nicht nur GTK wieder zum Laufen zu bringen, sondern auch passende wxWidgets und wxPython Versionen zu finden, etc.) Grauenvoll. Ich hätte nie gedacht, dass es unter Linux etwas vergleichbares gibt wie die "DLL-Hell" von Windows. Und GTK ist wohl auch das einzige Beispiel. Qt ist binärkompatibel über alle Versionen von Qt1 bis Qt3. Punkt. Qt4 war von Anfang an als Bruch der Kompatibilität geplant. Qt3 wird weiter supportet und Qt4 enthält vieles, was den Umstieg bei Bedarf erleichtert.
wxPython - Ist nicht so schlecht dokumentiert, wie du glaubst. Auf der wxPython-Website findest du einiges an Material. Die Demo ist auch nicht ohne. Wenn du dir die mal ansiehst, dann siehst du, was alles möglich ist und hast auch schon ein Codebeispiel dafür. Es enthält bereits Objekte, die für das Drucken und eine Druckvorschau verwendet werden können (plattformübergreifend :-) ). Ein funktionierendes Grid-Widget ist auch mit dabei. Es gibt ziemlich viele, einfach zu verwendende, Widgets. Man muss sich also nicht aus einem, sehr mächtigen, Widget alles selber zusammenbasteln, sondern verwendet für jede "einfache Sache" auch ein "einfaches Widget". Das Beste daran ist, dass diese Widgets sowohl unter Windows wie auch unter Linux super aussehen. (wxPython wird wahrscheinlich mein Favorit werden, da die Möglichkeiten wirklich nicht schlecht sind.)
Vorteile von wxWidgets/wxPython: * sehr vollständig * plattformübergreifend Nachteile von wxPython: * Läuft (bevorzugt) mit GTK. Großer Nachteil, s.o. * Inkompatibilitäten zwischen versch. Versionen * Ist in keiner Version, die ich bisher getestet habe, stabil. Segfaults waren bei meinen Tests nicht allzu selten. * WYSIWYG-Design Unterstützung ist zwar vorhanden, aber nicht berauschend. Ich habe mal Boa Constructor ausprobiert, war zwar brauchbar, aber genauso instabil wie wxPython selbst. Ehrlich, alles, wozu ich raten kann, ist Qt. Stefan _______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de