【发布时间】:2014-06-28 18:39:31
【问题描述】:
我想创建一个按钮循环,并在按下它们时执行命令。
k=0
for row in list:
delete_list.append("button_delete"+str(k))
delete_list[k] = Gtk.Button(label="Delete")
grid.attach(delete_list[k], columns+1, k, 1, 1)
delete_list[k].connect("clicked",globals()["on_button"+str(k)+"_clicked"])
k+=1
按钮显示正确,但连接“点击”信号时遇到问题。
delete_list[k].connect("clicked",globals()["on_button"+str(k)+"_clicked"])
KeyError: 'on_button0_clicked'
我首先认为该错误是因为没有 on_button0_clicked 方法,但我创建了它,但仍然遇到相同的错误。
另外,如果有一些好的方法/建议可以动态地创建按钮响应的方法,那就太好了。我实际上需要为每个使用“k”计数器的按钮创建一个方法。
【问题讨论】:
-
“我首先认为错误是因为没有 on_button0_clicked 方法,但我创建了它,但仍然遇到同样的错误。” - 是某个类的方法而不是全局范围?
-
是的,该方法在同一个类中,将它放在全局范围内可以修复错误:)
标签: python-2.7 pygobject