Servus, ich habe einen code in python (basierend auf python 3.4.3). Nun möchte ich für die einfachere Bedingung, eine GUI dafür erstellen. Wenn ich richtig verstanden habe, unterstützt python keine GUI. Ist es möglich irgendwie über C# python aufzurufen, auch über comand line oder so, und dann die Befehle, je nach dem was in GUI ausgewählt wird, abarbeiten. Ich habe was über Ironpython gelesen, aber das scheint nur python 2.7 zu unterstützen. Kann mir einer Helfen und sagen wie ich am besten ohne grossen Aufwand für python code eine GUI erstellen kann? Ein Link oder ein Beispiel Code wäre echt super! Gruss Michael
:
Verschoben durch User
PyQt, PySide oder Tkinter PyQt: https://riverbankcomputing.com/software/pyqt/intro PySide: https://wiki.qt.io/PySide Tkinter: https://docs.python.org/3.4/library/tkinter.html
Naja dir sollte halt klar sein, dass Python ein Skriptsprache ist und keine Programmiersprache. Natürlich sind die Grenzen da fließend und man kann das eine mehr oder weniger gut für das Andere verwenden. Trotzdem wirst du nie den Look-&Feel von Qt oder ähnlichem erreichen. Du solltest ein Python GUI eher als Notlösung sehen.
Michael schrieb: > Kann mir einer Helfen und sagen wie ich am besten ohne > grossen Aufwand für python code eine GUI erstellen kann? Ich find Tk ziemlich cool, allerdings in Kombination mit Tcl. Sollte ich mal auf python umsteigen, wäre für mich sicher Tkinter die erste Wahl.
Peter schrieb: > Trotzdem > wirst du nie den Look-&Feel von Qt oder ähnlichem erreichen. Du solltest > ein Python GUI eher als Notlösung sehen. Schwachsinn!
Peter schrieb: > Naja dir sollte halt klar sein, dass Python ein Skriptsprache ist > und > keine Programmiersprache. Natürlich sind die Grenzen da fließend und man > kann das eine mehr oder weniger gut für das Andere verwenden. Trotzdem > wirst du nie den Look-&Feel von Qt oder ähnlichem erreichen. Du solltest > ein Python GUI eher als Notlösung sehen. Oder du benutzt Python mit QT wie tausende andere Leute. Da erreicht man ganz gut Look&Feel von QT! Warum sollte Python eigentlich keine Programmiersprache sein?
Hallo Michael. Michael schrieb: > ich habe einen code in python (basierend auf python 3.4.3). > Nun möchte ich für die einfachere Bedingung, eine GUI dafür erstellen. > Wenn ich richtig verstanden habe, unterstützt python keine GUI. Das stimmt nicht. Für Python 3 gibt es eine Bibliothek, tkinter, die genau für den Zeck gedacht ist. Die gibt es schon für Python 2, wurde aber dort großgeschrieben. tkinter gehört eigentlich zu fast jeder Distribution von Python 3 dazu. Damit ist dann das Skript auch direkt für jede Plattform geeignet, auf der Python 3 läuft. > oder ein Beispiel Code wäre echt super! Siehe im Anhang "Buttontest2.py" Ein weiteres Beispiel mit weniger Grafik, aber mit einer echten sinnvollen Anwendung, Dateioperation ec. findet sich hier: http://www.mikrocontroller.net/wikifiles/9/90/PyKicadSchematic-ID_Interchanger_RevC.zip Wenn Du Probleme mit dem Starten hast, wird wohl versehentlich der Interpreter für P<thon 2 verwendet. Darum im Zweifel explizit Idle3 starten, das Skript einlesen und über "run" starten. Das sollte funktionieren. Ganz selten: Wenn dann noch eine Fehlermeldung über ein fehlendes tkinter kommt, dieses Nachinstallieren. GUIs sind auch für Skripte eine sehr sinnvolle Erweiterung, weil es damit einfacher wird, den User durch Auswahlmechanismen navigieren zu lassen. Dienstlich habe ich z.Z. oft damit zu tun, irgendwelche Hilfsprogramme oder Skripte einzusetzten. Und zwar täglich etliche verschiedene, und dann genau diese erstmal für Wochen oder gar Monate nicht mehr. Mit reinen Kommandozeilen müsste ich mich dann jedesmal neu einlesen. Bei "echter" Grafikanwendung zeigen sich natürlich Grenzen. Meine Idee, damit eine Art Gerberviewer wie aus https://www.mikrocontroller.net/wikifiles/5/5a/PyGerberAnalyse_B5_13Jun2013.zip schreiben zu wollen, darf natürlich zu recht als Grenzwertig eingestuft werden. Aber für Kleinkram geht es trozdem gut genug. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
:
Bearbeitet durch User
Peter schrieb: > Naja dir sollte halt klar sein, dass Python ein Skriptsprache ist und > keine Programmiersprache. [...] Trotzdem > wirst du nie den Look-&Feel von Qt oder ähnlichem erreichen. Du solltest > ein Python GUI eher als Notlösung sehen. 1. Skriptsprachen sind auch Programmiersprachen. 2. Viele verbreitete Skriptsprachen hinken dank JIT-Compilern den compilierten Programmiersprachen performancemässig für fast alle praktischen Zwecke in keiner Weise mehr hinterher. Ausnahmen vielleicht Hochleistungs-Rechnen, Games und Systemprogrammierung. Aber sicher nicht eine typische GUI-Anwendung ohne Low-Level-Zeugs oder aufwendige Algorithmen. 3. Diejenige Sprache, in der am meisten GUIs programmiert werden, ist eine Skriptsprache: Javascript zusammen mit HTML. Auch Dinge, die einer nativen Desktop-GUI kaum/nicht mehr nachstehen.
WICHTIGER NACHTRAG: Bernd W. schrieb: > Siehe im Anhang "Buttontest2.py" Es fehlte das Hintergrundbild "P600-Dioden2.gif" im vorherigen Beitrag. Es muss im gleichen Ordner wie das Skript stehen. Wenn Du eine lange Fehlermeldung die mit "_tkinter.TclError: couldn't open "P600-Dioden2.gif": no such file or directory" endet, erhälst, ist es genau das Problem. Natürlich kannst Du auf die Tour dort ein eigenes Gif einbinden. > > Ein weiteres Beispiel mit weniger Grafik, aber mit einer echten > sinnvollen Anwendung, Dateioperation ec. findet sich hier: > http://www.mikrocontroller.net/wikifiles/9/90/PyKicadSchematic-ID_Interchanger_RevC.zip Dort findet sich auch das Beispiel einer "Inline" Anwendung von Grafik nach einer Base64 Wandlung (die Sprachauswahl Buttons). "Inline" meint hier, dass die Werte für die Grafik als Textartiger Block im Programm selber stehen. Das erleichtert die Portabilität, ist aber natürlich nur für kleine Grafiken wie z.B. Buttons sinnvoll. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
:
Bearbeitet durch User
kleine Frage zu tkinter, da ich es noch nie verwendet habe: Gibt es fuer die GUI eigentlich auch einen Editor/Designer, so wie es bei Qt/PyQt der fall ist? (zumindestens unter Windows gibt es fuer PyQt den Designer den es auch fuer das normale Qt gibt)
ich mache die einfachen oberflächen mit pygame, ist nicht immer optimal, aber ...
Hallo Kaj. Kaj schrieb: > Gibt es fuer die GUI eigentlich auch einen Editor/Designer, so wie es > bei Qt/PyQt der fall ist? Meines Wissens nicht. Für die meist einfach gestrickte Fälle besteht dazu auch nicht so recht der Bedarf. Ich lasse mich aber gerne vom Gegenteil überzeugen. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
Hallo Stephan. Stephan G. schrieb: > ich mache die einfachen oberflächen mit pygame, ist nicht immer optimal, > aber ... Gibt es demm pygame mittlerweile für Python 3? Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.l02.de
also ich kann die biblothek runter laden, ich benutze selber aber noch 2.7. ich habe mal kurz in idle 3.4 pygame geladen, sieht gut aus.
Bernd W. schrieb: > Gibt es demm pygame mittlerweile für Python 3? Ja, z.B. hier: http://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.