我有这段代码可以创建一个简单的复选框:

from Tkinter import *

CheckVar = IntVar()
self.checkbutton = Checkbutton(self.root, text = "Test", variable = CheckVar)

但是,默认情况下未选中此复选框,我正在寻找一种方法来检查它。

到目前为止,我已经尝试插入
CheckVar.set(1)

在 CheckVar 之后,但它没有用。

谢谢你的帮助

编辑:这是我的完整代码。当我运行它时,该框仍未选中
from Tkinter import *

class App():
    def __init__(self, root):
        self.root = root
        CheckVar = IntVar()
        CheckVar.set(1)
        self.checkbutton = Checkbutton(self.root, text = "Test", variable = CheckVar)
        self.checkbutton.grid(row=0, column=0,)


root = Tk()
app = App(root)
root.mainloop()

最佳答案

您的 CheckVar 是一个局部变量。它正在收集垃圾。将其另存为对象属性。此外,您可以一步创建变量并对其进行初始化:

self.CheckVar = IntVar(value=1)
self.checkbutton = Checkbutton(..., variable = self.CheckVar)

关于python - Tkinter:有没有办法默认选中复选框?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37595078/

10-12 19:02