tkinter Entry Eingabe in Variable speichern

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Schaf_Online
User
Beiträge: 5
Registriert: Samstag 8. Mai 2021, 20:19

Ich versuche eine Eingabe aus tkinter in einer Variable zu speichern, und per Print ausgeben zu lassen. Ich habe es mit diesem Code versucht:

Code: Alles auswählen

import tkinter as tk

window = tk.Tk()
var = tk.StringVar()
input = tk.Entry(window,textvariable=var)
input.grid(row=0, column=0)
var = input.get()
print(var)
window.mainloop()
bekomme aber keine Ausgabe. Warum funktioniert er nicht?
Benutzeravatar
__blackjack__
User
Beiträge: 12984
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Schaf_Online: Du erstellst ein `StringVar`-Objekt und fragst dann gleich den Inhalt ab, bevor die GUI-Hauptschleife die GUI angezeigt hat und der Benutzer Gelegenheit hatte etwas einzugeben.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
rennmaus
User
Beiträge: 217
Registriert: Dienstag 4. August 2020, 10:24

Du musst die Abfrage des Eingabe Felds an ein event, wie z.b. Einem drücken eines Buttons oder des drückens der Enter Taste binden. Also z.b.

Code: Alles auswählen

window.bind("<enter>", get_input)
Da müsstest du dann noch eine Funktion erstellen, die get_input heißt. Ich weiß gerade nicht genau, ob <enter> stimmt, müsstest du mal nachsehen.

Mfg
Christian
Antworten