pySimpleGui: Disable/enable menu-items

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
Antworten
canis42
User
Beiträge: 9
Registriert: Donnerstag 8. August 2024, 18:00

Ich googele nun seit stunden, komme aber immer nuch auf dieselben Seiten, au denen es nicht beschrieben steht.

Ich weiß, man kann Menüeinträge durch ein vorangestelltes Ausrufezeich bei de Erzeugung deaktivieren, aber wie kann man es vom Programm aus deaktivieren und aktivieren?

Gibt es eine weiter führende Dokumentation für pySimpleGui aus der man solche Dinge erfahren kann?
Benutzeravatar
sparrow
User
Beiträge: 4540
Registriert: Freitag 17. April 2009, 10:28

Ich kenne niemanden, der das tatsächlich einsetzt. Mir ist diese Herangehensweise ganz ohne Objektorientierung nichts.
Ansonsten ist das ein kommerzielles Produkt. Wenn da Unklarheiten mit der Benutzung bestehen, haben die bestimmt Support.
Benutzeravatar
__blackjack__
User
Beiträge: 14087
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Das einzige was ich in der Dokumentation so auf Anhieb sehe, ist dass man mit der `update()`-Methode die Menüstruktur erneut angeben kann. Das wäre aber eine etwas nervige Lösung IMHO. Siehe auch: https://github.com/PySimpleGUI/PySimpleGUI/issues/4701

Die Bibliothek scheint mir beim vereinfachen ein bisschen zu weit zu gehen. Das mag auf den ersten Blick einfacher aussehen, aber wenn man dann etwas machen will was nicht in diesen einfache Schema passt, wird es kompliziert bis unmöglich.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
canis42
User
Beiträge: 9
Registriert: Donnerstag 8. August 2024, 18:00

Danke fürs Nachschauen!
Ich habe mal versucht ChatGPT darauf anzusetzen. das Kommt mit der "Lösung" :

Code: Alles auswählen

 window['-MENU-'].update(menu_item='File::Save', disabled=True)
Funktioniert aber auch nicht: TypeError: Menu.update() got an unexpected keyword argument 'menu_item'

Was mir in dem Zusammenhang auch nicht gelingt, das ist einem Menüelement einen Key zuzuweisen in der Art 'List All::-LISTALL-' und dann auf das Menü-Item darüber zuzugreifen. der Key wird schilicht nicht gefunden.

Ich gebe die Ecke erstmal auf, solane mir nicht neue Infos zufliegen.

Für mein Projekt fehlt mir auch die Hardware. Einen Memorystick einzusetzen um 1TB Photodaten auf einem Raspberry-Pi zu speichern ist kläglich gescheitert. Die Daten werden mit 2MB/s auf einen SanDisk-Stick (USB 3.2) geschrieben. Nächster Versuch ist eine NVME in einem externen Gehäuse. Wenn das auch nicht geht, dann muss ein Raspberry Pi 5 her mit direktem Aufsatz der NVME

Ein ausgesprochenes PySimpleGUI-Forum scheint es auch nicht zu geben. Der persönliche "Support" erfolgt über Github.
Benutzeravatar
__blackjack__
User
Beiträge: 14087
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

ChatGPT rät Syntax und API. Wenn es ganz viele Beispieldaten hat, rät es besser als wenn es nur wenige hat. Und wie sparrow schon schrieb, das ist kein wirklich verbreitetes Modul für GUIs. Deswegen ist das ja jetzt Bezahlsoftware und nicht mehr OpenSource. Was es IMHO nicht beliebter machen wird.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Antworten