Hallo,
ich bin neu bei Python und möchte ein kleines Programm machen, indem man auf einen Knopf drückt und eine Zahl immer größer wird. Dies funktioniert nicht und ich habe im Internet keine Lösung gefunden. Hier ist der Code:
import tkinter as tk
number = 0
def click_message():
number = number + 1
label1.configure(text="The Button was pressed " + number + "times")
print(n)
root = tk.Tk()
root.geometry("400x400")
root.resizable(width=False, height=False)
root.title("Tkinter-Test-Programm")
label1 = tk.Label(text="The Button was not pressed!")
label1.pack()
button1 = tk.Button(text="Click me!", command=click_message)
button1.pack()
root.mainloop()
Soweit läuft alles gut, aber die Variable "number" kann nicht in der "def" Funktion genutzt werden. Es kommt zur folgenen Fehlermeldung:
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\"Benutzername"\AppData\Local\Programs\Python\Python310\lib\tkinter\__init__.py", line 1921, in __call__
return self.func(*args)
File "C:\Users\"Benutzername"\PycharmProjects\Test\main.py", line 7, in click_message
n = n + 1 <--- (Das soll in der "def" Funktion passieren, was es aber nicht tut!)
UnboundLocalError: local variable 'n' referenced before assignment
Wenn mir jemand den funktionierenden Code schicken könnte wäre ich sehr dankbar! LG