Python Startwert Variable
Verfasst: Freitag 3. April 2020, 13:54
Hallo zusammen,
auch ich bin ein Newbie in Python und beisse mir gerade an einem Problem die Zähne aus.
Ich habe eine GUI auf Tkinter erstellt und schon einige Zeilen Grundcode erstellt. Das läuft soweit auch ganz gut...ABER...
ich möchte einen Startwert in eine Variable setzen und diese ariable dann weiterver- un bearbeiten d.h. im Detail:
- es geht um eine Temperaturregelung
- die eigentliche Temp.regelung habe ich noch nicht erstellt, die fehlt noch (kommt später)
- wenn die Steuerung das erstmal hochläuft, beim ersten Einsatz oder nach einem Stromausfall o.ä., möchte ich einen Startwert für die Solltemp. haben z.B. 50°C. Also einen Defaultwert
- wenn ich diesen Defaultwert im Programm fest hinterlege, kann ich diese Variable nicht mehr ändern, weil wegen der GUI ja das Programm immer wieder durchlaufen wird (mainloop).
- ich hängt da völlig fest, kann ja aber nicht sein, dass das nicht geht. Ich vermute mal, ich bin auf dem völlig falschen Dampfer unterwegs und würde mich über einen Stups in die richtige Richtung echt freuen
- es geht dabei eigentlich "nur" um die Codezeilen zwischen 42 + 58.
- der Istwert in der GUI ist zweckentfremdet, um mir anzeigenn zu lassen, ob sich der Wert der Variable st1 ändert, um es zur Istwertregelung zu verwenden
Ich sage schonmal vielen Dank.
Anbei der bisherige Code
auch ich bin ein Newbie in Python und beisse mir gerade an einem Problem die Zähne aus.
Ich habe eine GUI auf Tkinter erstellt und schon einige Zeilen Grundcode erstellt. Das läuft soweit auch ganz gut...ABER...
ich möchte einen Startwert in eine Variable setzen und diese ariable dann weiterver- un bearbeiten d.h. im Detail:
- es geht um eine Temperaturregelung
- die eigentliche Temp.regelung habe ich noch nicht erstellt, die fehlt noch (kommt später)
- wenn die Steuerung das erstmal hochläuft, beim ersten Einsatz oder nach einem Stromausfall o.ä., möchte ich einen Startwert für die Solltemp. haben z.B. 50°C. Also einen Defaultwert
- wenn ich diesen Defaultwert im Programm fest hinterlege, kann ich diese Variable nicht mehr ändern, weil wegen der GUI ja das Programm immer wieder durchlaufen wird (mainloop).
- ich hängt da völlig fest, kann ja aber nicht sein, dass das nicht geht. Ich vermute mal, ich bin auf dem völlig falschen Dampfer unterwegs und würde mich über einen Stups in die richtige Richtung echt freuen

- es geht dabei eigentlich "nur" um die Codezeilen zwischen 42 + 58.
- der Istwert in der GUI ist zweckentfremdet, um mir anzeigenn zu lassen, ob sich der Wert der Variable st1 ändert, um es zur Istwertregelung zu verwenden
Ich sage schonmal vielen Dank.
Anbei der bisherige Code
Code: Alles auswählen
from tkinter import * # Import der Graphischen Bibliotek
#===================================================================================
# Hauptfenster
#===================================================================================
root = Tk() # Fenster erstellen
root.geometry("320x240") # Fenstergröße - geometry("breitexhoehe+x+y")
root.wm_title("Tassenwärmer") # Fenster Titel
root.iconbitmap(r"D:\Eigene Dateien NWA\Download\Joy-It\Icons\open_icon_library-win-0.11\Grey-Dot_16x16.ico") # Eigenes Icon im Hauptfenster
root.config(background = 'black') # Hintergrundfarbe des Fensters
#===================================================================================
# Hier kommen die Elemente hin
#===================================================================================
#========================
# Bilder
#========================
# Definition Bilder
B1 = PhotoImage(file=r"D:\Eigene Dateien NWA\Download\Joy-It\Icons\Ein-Aus64x69.png")
B2 = PhotoImage(file=r"D:\Eigene Dateien NWA\Download\Joy-It\Icons\Auto Ein-Aus64x69 V4.png")
B3 = PhotoImage(file=r"D:\Eigene Dateien NWA\Download\Joy-It\Icons\Plus_64x69.png")
B4 = PhotoImage(file=r"D:\Eigene Dateien NWA\Download\Joy-It\Icons\Minus_64x69.png")
B5 = PhotoImage(file=r"D:\Eigene Dateien NWA\Download\Joy-It\Icons\Light_Gray_OFF_64x64.png")
B6 = PhotoImage(file=r"D:\Eigene Dateien NWA\Download\Joy-It\Icons\Light_Blue_ON_64x64.png")
#========================
# Variablen und Verarbeitug
#========================
# Variablen
# --- st1 -> Solltemperatur 1
# --- it1 -> Isttemperatur 1
#========================
# Sollwert
#========================
st1 = 50
def button_increase():
global st1
if st1 < 60:
st1 += 1
label_Soll.config(text=str(st1))
def button_decrease():
global st1
if 40 < st1:
st1 -= 1
label_Soll.config(text=str(st1))
#========================
# Label
#========================
label_Soll = Label(root, text=str(st1), fg='black', bg='lightgray', font=('Arial', 36))
label_Soll.place(x=153, y=96, width=138, height=54)
label_Soll2 = Label(root, text="Sollwert", fg='black', bg='lightgray', font=('Arial', 10))
label_Soll2.place(x=153, y=80, width=138, height=15)
label_Ist = Label(root, text=str(st1) fg='black', bg='gray', font=('Arial', 36))
label_Ist.place(x=153, y=176, width=138, height=54)
label_Ist2 = Label(root, text="Istwert", fg='black', bg='gray', font=('Arial', 10))
label_Ist2.place(x=153, y=160, width=138, height=15)
#========================
# Schaltflächen
#========================
button_1=Button(root)
button_1.place(x=5, y=5, width=64, height=69)
button_1.config(bd=0, relief=FLAT, image=B1, command = root.destroy)
button_2=Button(root)
button_2.place(x=79, y=5, width=64, height=69)
button_2.config(bd=0, relief=FLAT, image=B2, command = root.destroy)
button_3=Button(root)
button_3.place(x=153, y=5, width=64, height=69)
button_3.config(bd=0, relief=FLAT, image=B3, command = button_increase)
button_4=Button(root)
button_4.place(x=227, y=5, width=64, height=69)
button_4.config(bd=0, relief=FLAT, image=B4, command = button_decrease)
#===================================================================================
# Befehle, die zwingend am Ende stehen müssen
#===================================================================================
root.mainloop()