Wie man den Text des Tkinter-Eingabe-Widgets mit einer Schaltfläche einstellt
-
Tkinter
delete
undinsert
Methode, um den Inhalt vonEntry
zu setzen -
Tkinter
StringVar
Methode zum Setzen des Inhalts von TkinterEntry
Widget
Wir haben zwei Methoden, um den Text des Tkinter Entry
Widgets durch Anklicken einer Schaltfläche zu setzen oder zu ändern,
- Tkinter
löschen
undeinfügen
Methode - Tkinter
StringVar
Methode
Tkinter delete
und insert
Methode, um den Inhalt von Entry
zu setzen
Das Tkinter Entry
Widget hat keine spezielle set
Methode, um den Inhalt des Entry
zu setzen. Es muss zuerst den bestehenden Inhalt löschen und dann den neuen Inhalt einfügen, wenn wir den Inhalt komplett ändern müssen.
Vollständige Arbeitscodes zum Setzen von Text in Entry
mit den Methoden delete
und insert
import tkinter as tk
root = tk.Tk()
root.geometry("400x50")
def setTextInput(text):
textExample.delete(0, "end")
textExample.insert(0, text)
textExample = tk.Entry(root)
textExample.pack()
btnSet = tk.Button(
root, height=1, width=10, text="Set", command=lambda: setTextInput("new content")
)
btnSet.pack()
root.mainloop()
textExample.delete(0, "end")
Die Methode Löschen
der Eingabe
löscht den angegebenen Bereich von Zeichen in der Eingabe
.
0
ist das erste Zeichen und "end"
ist das letzte Zeichen des Inhalts im Entry
-Widget. Daher löscht delete(0, "end")
den gesamten Inhalt im Feld Entry
.
textExample.insert(0, text)
Die Methode insert
fügt den Text an der angegebenen Position ein. Im obigen Code fügt sie den text
am Anfang ein.
Tkinter StringVar
Methode zum Setzen des Inhalts von Tkinter Entry
Widget
Wenn der Inhalt des Tkinter Entry
-Widgets mit einem StringVar
-Objekt verknüpft wurde, könnte es automatisch den Inhalt des Tkinter Entry
-Widgets jedes Mal ändern, wenn der Wert von StringVar
aktualisiert wird.
Vollständige Arbeitscodes zum Setzen von Text in Entry
mit StringVar
-Objekt
import tkinter as tk
root = tk.Tk()
root.geometry("400x50")
def setTextInput(text):
textEntry.set(text)
textEntry = tk.StringVar()
textExample = tk.Entry(root, textvariable=textEntry)
textExample.pack()
btnSet = tk.Button(
root, height=1, width=10, text="Set", command=lambda: setTextInput("new content")
)
btnSet.pack()
root.mainloop()
textEntry = tk.StringVar()
textExample = tk.Entry(root, textvariable=textEntry)
textEntry
ist ein StringVar
-Objekt und es ist mit dem Textinhalt verbunden, oder anders gesagt, mit der Option textvariable
im Entry
-Widget.
textEntry.set(text)
Wenn textEntry
aktualisiert wird, um einen neuen Wert text
zu erhalten, dann werden die Widgets, deren textvariable
mit ihm assoziiert ist, automatisch aktualisiert.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook