如何在 Tkinter 中的 Entry 小部件中使用 StringVar 对象?

tkinterpythongui-programming

Tkinter 中的 StringVar 对象可以帮助管理小部件(例如 Entry 小部件或 Label 小部件)的值。您可以将 StringVar 对象分配给小部件的 textvariable。例如,


data = ['Car', 'Bus', 'Truck', 'Bike', 'Airplane']

var = StringVar(win)

my_spinbox = Spinbox(win, values=data, textvariable=var)

在这里,我们创建了一个字符串列表,后面跟着一个 StringVar 对象 "var"。接下来,我们将 var 分配给 Spinbox 小部件的 textvariable。要获取 Spinbox 的当前值,您可以使用 var.get()

示例

以下示例演示了如何在 Entry 小部件中使用 StringVar 对象。


from tkinter import *

top = Tk()
top.geometry("700x300")
top.title("StringVar Object in Entry Widget")

var = StringVar(top)

def submit():
   Label2.config(text="Your User ID is: " +var.get(), font=("Calibri,15,Bold"))

Label1 = Label(top, text='Your User ID:')
Label1.grid(column=0, row=0, padx=(20,20), pady=(20,20))

myEntry = Entry(top, textvariable=var)
myEntry.grid(column=1, row=0, padx=(20,20), pady=(20,20))

myButton = Button(top, text="Submit", command=submit)
myButton.grid(column=2, row=0)

Label2 = Label(top, font="Calibri,10")
Label2.grid(column=0, row=1, columnspan=3)

top.mainloop()

输出

它将产生以下输出 −


相关文章