擅长:python、mysql、java
<p>每个复选框的变量必须是<code>IntVar</code>。您的<code>moduleCheck</code>列表当前未初始化,因此当您尝试访问其中的元素时,将出现错误</p>
<p>在下面的代码(由您修改)中,我初始化了<code>moduleCheck</code>以包含两个IntVars。
当您按下保存按钮时,它将向控制台打印复选框的当前状态</p>
<pre><code>import tkinter as tk
modulesMain = tk.Tk()
moduleChecks = [tk.IntVar() for i in range(2)]
def SaveChanges():
for idx,item in enumerate(moduleChecks):
print(f"{idx} = {item.get()}")
appCheck = tk.Checkbutton(modulesMain, text = "App", variable = moduleChecks[0])
appCheck.grid()
searchCheck = tk.Checkbutton(modulesMain, text = "Check", variable = moduleChecks[1])
searchCheck.grid()
saveButton = tk.Button(modulesMain, text = "Save Changes", command = SaveChanges)
saveButton.grid()
modulesMain.mainloop()
</code></pre>