标签:eva com segment cos 一个 关注 提示框 lambda 常用
Variable
Variables
是Tkinter编程中非常重要的组成部分。它存在的目的是为了解决Python中存在的一个“问题”,即Python本身并不支持变量回溯。Entry
输入框和一个按钮,每当用户按下按钮时都会将输入框中的值通过messagebox.showinfo消息框显示出来from tkinter import Tk, Variable, Entry, Button
from tkinter.messagebox import showinfo
tk = Tk()
a = Variable(tk, value=‘123‘)
e = Entry(tk, textvariable=a)
b = Button(tk, command=lambda *args: showinfo(message=a.get()),
text="GET")
e.pack()
b.pack()
tk.mainloop()
效果如下:Variable
作为前段和后端的桥梁,我们便可以很方便的获取用户输入的值。Variable
常用的使用方法Variable
: BooleanVar, DoubleVar, IntVar, StringVar
, 除了类型不同, 其使用方法完全一致Variable
对象StringVar
var = StringVar()
可以通过value
属性为其赋初值Variable
对象进行读取or写入操作Variable
对象的set
和get
方法进行set
from tkinter import *
tk = Tk()
v = Variable()
v.set("123")
e = Entry(tk, textvariable=v)
e.pack()
tk.mainloop()
get
Variable
对象执行读or写or销毁操作本身也可以触发事件Variable
的trace
方法,在Variable
的值被读取or写入or销毁的时候触发事件,进而调用回调函数。trace
方法接收两个参数: mode
指定了事件的类型, 用"r"表示读取操作, 用"w"表示写入操作, 用"u"表示销毁操作. callback
指定了当mode
中指定的事件触发时调用的回调函数Entry
执行写入操作时, 触发回调函数:from tkinter import *
from tkinter.messagebox import *
def callback(*args):
showinfo(message="I‘ve been changed")
tk = Tk()
v = Variable()
v.trace("w", callback)
e = Entry(tk, textvariable=v)
e.pack()
tk.mainloop()
执行后,每当改变Entry
中的值,都会有提示框出现。获取更多对
Variable
的介绍,建议参考官方文档:https://effbot.org/tkinterbook/variable.htm
欢迎关注我的微信公众号: Code Segment, 获取更多关于编程等内容的文章。
Tkinter 从0到1——Variable类的使用方法详解
标签:eva com segment cos 一个 关注 提示框 lambda 常用
原文地址:https://www.cnblogs.com/CodeSegment/p/12837790.html