Hallo,
ich hoffe ihr könnt mir helfen. Gibt es eine möglichkeit, bei tkinter, beim Start zu kontrollieren ob ein Checkbutton beim letzten mal gedrückt wurde und somit aktiviert wurde?
klappt dieses nur damit einen Wert in eine Datei zu speichern?
tkinter Checkbutton aktivität vorher auslesen
doch das weiß ich mir fehlt nur die Möglichkeit den Button zu verändern
Code: Alles auswählen
#--------Biblioteken--------
from tkinter import*
import datetime
import locale
#-----------Definitionen---------------
#Knöpfe
def anAus_1():
lab_1["text"] = var_1.get()
with open("anAus_1.txt", "w") as fh:
fh.write(lab_1["text"])
return
#-----------Fenster--------------
root = Tk()
root.title("Garten Bewässerung")
knopfframe = Frame(root)
knopfframe.grid(column=0,row=0, sticky=(N,W) )
zeitframe = Frame(root)
zeitframe.grid(row=0, column=1, sticky=(N,E))
zsf = Frame (root)
zsf.grid(row=2, column=0,sticky=(N,W))
#------------Variablen------------
#Knöpfe
var_1 = StringVar()
#-------------Labels--------------
#Knöpfe
lab_titel=Label(knopfframe, text="Manuelle Steuerung")
lab_1 = Label(knopfframe, text="Aus")
#-------------Knöpfe-------------
c_1=Checkbutton(knopfframe, text="Relai 1", offvalue="Aus", onvalue="An", variable=var_1, command=anAus_1)
c_1.deselect()
#--------------packen------------------
c_1.grid(row=1, column=0)
lab_titel.grid(row=0, column=0)
lab_1.grid(row=2, column=0)
root.mainloop()
ja das ist richtig das versteh ich auch alles meine frage ist nur wenn ich das Programm jetzt einmal ausführe und dann den Checkbutton auswähle möchte ich das er auch noch aktiv ist wenn ich das Programm das nächste mal starte?
Also weißt Du doch nicht, wie Du die Datei wieder einlesen kannst, dann sonst würdest Du es ja schon machen: Datei lesen und den Inhalt auf "An" prüfen und den Checkbutton entsprechend setzten.
Die Kommentare mit den --- sind eigentlich überflüssig, weil das jeder auch so lesen kann, was da passiert. Zumal wenn immer danach etwas von Knöpfen steht, ist das sehr verwirrend, wenn das dann gar nichts mit Knöpfen zu tun hat.
Gewöhn Dir gleich wieder ab, Variablen mit _1 zu versehen, das hat keinen Mehrwert. Variablen sollten aussagekräftig sein.
Eine Funktion sollte alles, was sie braucht über ihre Argumente bekommen, das tut `anAus_1` nicht, da fehlt lab_1 und var_1.
Sternchenimporte sind böse, warum steht hier im Forum bei jedem zweiten Beitrag zu tkinter.
Warum benutzt Du beim Label nicht var_1 um den Wert automatisch dem Checkbutton-Status anzupassen?
Die Kommentare mit den --- sind eigentlich überflüssig, weil das jeder auch so lesen kann, was da passiert. Zumal wenn immer danach etwas von Knöpfen steht, ist das sehr verwirrend, wenn das dann gar nichts mit Knöpfen zu tun hat.
Gewöhn Dir gleich wieder ab, Variablen mit _1 zu versehen, das hat keinen Mehrwert. Variablen sollten aussagekräftig sein.
Eine Funktion sollte alles, was sie braucht über ihre Argumente bekommen, das tut `anAus_1` nicht, da fehlt lab_1 und var_1.
Sternchenimporte sind böse, warum steht hier im Forum bei jedem zweiten Beitrag zu tkinter.
Warum benutzt Du beim Label nicht var_1 um den Wert automatisch dem Checkbutton-Status anzupassen?