ich bin ganz neu auf diesem Gebiet unterwegs und möchte einen kleinen Daten loger mit dem RPi bauen. Dazu habe ich mittels dem Tool Page eine kleines GUI erstellt mit 4 Buttons.
Den Code habe für das GUI habe ich nun generiert und mittels Geany möchte ich die Funktionen füllen... soweit zum Projekt.
Page hat mir zwei .py angelegt, einmal MeinProjekt.py und MeinProjekt_support.py. Soweit ich das verstanden habe setze ich meine ganzen Funktionen nun in das ..._support.py.
Das funktioniert auch teilweise....
Mein eigentliches Problem ist, das ich gerne sobald der Start-Button im GUI betätigt wird eine globale Variable namens gstat von 0 auf 1 gesetzt wird.
Dies möchte ich nutzen um diverse andere Funktionen zu ermöglichen, z.B. Visualisierung einer Led auf Rot oder das der Text des buttons von "Start" auf "Stop" geändert wird.
Ich habe desweiteren noch eine weitere Funktion die meinen Status abfragt, den ich nutze um zu schauen ob sie die globale Variable wirklich geändert hat. Aber das tut sie nicht!
Die globale Variable wird in der def init deklariert, bzw. diese habe ich dort einfach hinzugefügt (def init wurde von PAGE erstellt)
Code: Alles auswählen
...
def init (top, gui, *args, **kwargs):
global w, top_level, root, stat
w = bla
top_level usw...
stat = 0
request_status()
def request_status():
if stat == 0:
print("Wartet auf Anweisung")
else:
print("Zeichnet auf")
def Button_pressed(p1):
print("Startet")
stat = 1
request_status()
....
Was mich ebenso irritiert ist, dass der Code vom PAGE bei den Bindings für den Button immer ein Parameter p1 drinstehen hat?! Was hat es damit auf sich?
Hoffe ihr könnt mir helfen
Danke Euch
LG Tina