如何从tkinter复选框推断出更改的值?

时间:2018-07-29 19:05:14

标签: python tkinter

我在确定如何正确检索复选框变量的值时遇到麻烦。我也想问一下代码是否正确

onvalue=1, offvalue=0

多余。

import sys
from tkinter import *
import tkinter.messagebox
mGui=Tk()
checkCmd=IntVar()
checkCmd.set(0)
def runSelectedItems():
    if checkCmd == 0:
        labelText = Label(text="It worked").pack()
    else:
        labelText = Label(text="It did not").pack()

checkBox1 = Checkbutton(mGui, variable=checkCmd, onvalue=1, offvalue=0, text="Command  Prompt").pack()
buttonCmd = Button(mGui, text="Run Checked Items", command=runSelectedItems).pack()

2 个答案:

答案 0 :(得分:1)

IntVar是一种特殊类型的变量,您可以使用get()显式地获取值:

if checkCmd.get() == 1:

您不需要:

onvalue=1, offvalue=0

答案 1 :(得分:0)

取自here

offvalue = 与未选中按钮相对应的值。 默认值为0。

onvalue = 与选中按钮相对应的值。 默认值为1。

换句话说,是的...这是多余的。我会尝试为effbot网站添加书签,因为它对于使用Python学习tkinter确实很有用,因此您不必等待我们的回答。虽然不会得到 figbeam 的建议。