Hallo, für einen in Python geschriebenen ERPNExt-Client habe ich PySimpleGUI als GUI-Framework verwendet, da der Client sowohl unter Ubuntu als auch unter Windows laufen soll und mir das dafür das einfachste Framework zu sein scheint. Dabei ist aber das von PySimpleGUI für Ubuntu bereitsgestellte Fileselektor-Fenster (zum Auswählen einer Datei auf dem PC) sehr hässlich und unkomfortabel (unter Windows interessanterweise nicht). Wie kann ich, zumindest sofern Gnome verwendet wird, das übliche Gnome-Fileselektor-Fenster von Python aus ansprechen?
Fileselektor-Fenster in Python unter Gnome
Anmeldungsdatum: Beiträge: 785 Wohnort: Bremen |
|
Ehemaliger
Anmeldungsdatum: Beiträge: 28951 Wohnort: WW |
Hallo, nee, das ist keine gute Idee. PySimpleGUI unterstützt kein GTK, von daher müsstest du das ja alles neu schreiben. Wenn ich das richtig verstehe, nutzt PySimpleGUI OOTB Tkinter. Das ist halt in der Standardoptik unter Linux ziemlich altbacken. Tkinter unterstützt über ttk auch Themes - keine Ahnung, ob das aus PySimpleGUI heraus unterstützt wird. Ansonsten könntest du mal probieren, PySimpleGUI explizit Qt als Framework vorzugeben. Wie das geht steht in der Doku. Gruß, noisefloor |
(Themenstarter)
Anmeldungsdatum: Beiträge: 785 Wohnort: Bremen |
Hallo Noisefloor, danke, aber ich glaube du hast mich missverstanden. PySimpleGUIQt bringt genauso einen hässlichen Fileselektor wie alle PySimpleGUI-Varianten. Deshalb wollte ich das ja gerade ohne PySimpleGUI machen. Ich habe jetzt hier die Lösung gefunden. Filechooser war der entscheidende Begriff... Viele Grüße, Till |
Ehemaliger
Anmeldungsdatum: Beiträge: 28951 Wohnort: WW |
Hallo, schön, dass es jetzt besser funktioniert. Persönlich kann ich zwar den Ansatz von PySimpleGUI & Co verstehen, aber IMHO lohnt sich oft, doch das "richtige" GUI-Framework zu nutzen, weil du dann einfach flexibler bist. Besonders dann, wenn das Programm irgendwann doch noch mal wächst und imfangreicher wird. Gruß, noisefloor |
(Themenstarter)
Anmeldungsdatum: Beiträge: 785 Wohnort: Bremen |
Hallo Noisefloor, ich muss mich korrigieren: PySimpleGUIQt und auch PySimpleGUIWx bringen doch den schönen Filechooser! Allerdings bieten sie nicht genau den gleichen Funktionsumfang wie PySimpleGUI, so dass Programme erst angepasst werden müssten. Wie würde ich denn die richtige GUI über Python ansprechen? Vermutlich geht das dann aber nicht in einer Weise, die auch unter Windows läuft. Zur Not könnte ich natürlich unter Windows auf PySimpleGUI zurückfallen. Viele Grüße Till |
Ehemaliger
Anmeldungsdatum: Beiträge: 28951 Wohnort: WW |
Hallo, also mit "richtig" meinte ich, dass du das / ein Python-Modul nimmst, was direkt auf dem GUI-Framework aufsetzt. Also z.B. PySimpleGUI ist ja "nur" eine Zwischenschicht, die auf ein (bzw. mehrere) Frameworks aufsetzt. Das kann bestimmte Sachen einfacher machen (ist ja auch der Sinn von PySimpleGUI), dafür aber auch andere Sachen verstecken bzw. erst gar nicht zugänglich machen. Wenn das GUI-Framework unter Windows läuft und installiert ist, solltest du es auch aus Python heraus ansprechen können, genau so wie unter Linux. GTK war auf Win früher eher ... schwierig, keine Ahnung, ob das besser geworden ist. Tkinter und Qt laufen auch unter Windows. Die Optik hängt aber letztendlich davon ab, welche Themes genutzt werden. Eigentlich ist es aber unter Linux so, dass auch Qt-Applikationen unter GTK passable aussehen und umgekehrt. Gruß, noisefloor |