Die zu realisierende Funktion ist: Wenn Sie auf die Schaltfläche Tkinter klicken, wird der Text eines Eintrags geändert. Hier ist der Code-Schnipsel:den Text des Tkinter-Eintrags ändern, wenn Sie auf die Schaltfläche klicken
import Tkinter as tk
def create_heatmap_button_callback():
path_entry.delete(0, tk.END)
path_entry.insert(0, "clicked!")
def main():
root = tk.Tk()
path_entry = tk.Entry(master = root, text = "not clicked")
path_entry.grid(row=1, column=0, sticky = tk.W)
create_heatmap_button = tk.Button(master = root, text = "create map", command = create_heatmap_button_callback)
create_heatmap_button.grid(row=2,column=0,sticky = tk.W)
tk.mainloop()
if __name__ == "__main__":
global path_entry
main()
und wenn auf die Schaltfläche geklickt wird, ist hier die Ausgabe:
Nameerror: global name ‚path_entry‘ ist nicht
definiert Was ist der richtige Weg, dies zu tun?
Wie importieren Sie Tkinter? – Li357
Ich gehe davon aus, dass dies nicht der Code auf Modulebene ist, sonst ist 'path_entry' sehr global klar definiert und der Code, den Sie haben, würde korrekt funktionieren. Bitte zeigen Sie das Code-Snippet im Kontext an. –
Wenn ich Ihren Code ausführen, bekomme ich 'Name 'tk' ist nicht definiert ', nicht' globalen Namen 'path_entry' ist nicht definiert. Bitte geben Sie eine [mcve] an, die Ihr Problem veranschaulicht. – Kevin