【发布时间】:2018-01-04 04:29:08
【问题描述】:
我目前正在学习 tkinter 包中小部件的用法。并且不确定在检查按钮小部件中的开/关值如何工作。
我写的代码如下:
from tkinter import *
from tkinter import ttk
root = Tk()
root.title("Checkbutton")
mainframe = ttk.Frame(root, padding="3 3 12 12")
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
mainframe.columnconfigure(0, weight=1)
mainframe.rowconfigure(0, weight=1)
measureSystem = StringVar()
cmd1 = lambda *args: print(str(measureSystem) + ' selected')
check = ttk.Checkbutton(mainframe, text='Use Metric',
command=cmd1, variable=measureSystem,
onvalue='metric', offvalue='imperial')
但是,当我检查和取消选中检查按钮时,无论检查按钮处于何种状态,都会返回以下内容:
PY_VAR1 selected
我了解 onvalue 和 offvalue 应该存储在 measureSystem 变量中,具体取决于检查按钮的状态。
为什么这里不是这样?
【问题讨论】: