gpt4 book ai didi

python - 检查按钮和按钮 : using lambda

转载 作者:太空宇宙 更新时间:2023-11-03 13:41:41 25 4
gpt4 key购买 nike

<分区>

我正在尝试根据列表创建多个复选框,但看起来我搞砸了按钮的命令调用可变方面

我的代码是:

class Example(Frame):

def __init__(self, parent):
Frame.__init__(self, parent)

self.parent = parent
self.initUI()

def initUI(self):

self.courses = ["CSE 4444", "CSE 4343"]
self.vars = []

self.parent.title("Homework Helper")

self.course_buttons()

self.pack(fill=BOTH, expand=1)

def course_buttons(self):
x = 0
y = 0

for i in range(0, len(self.courses)):
self.vars.append(IntVar())
cb = Checkbutton(self, text=self.courses[i],
variable=self.vars[i],
command=lambda: self.onClick(i))
cb.select()
cb.grid(column=x, row=y)
y = y+1

def onClick(self, place):

print place
if self.vars[place].get() == 1:
print self.courses[place]

目前的测试是当复选框打开时在控制台上打印类(class),但它只适用于第二个按钮,按钮“CSE 4343”。当我与按钮“CSE 4444”交互时,没有打印任何内容。

此外,无论我是单击按钮“CSE 4343”还是按钮“CSE 4444”,onClick 的“place”值始终为 1。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com