我有一个按钮列表,我已经做了一个循环来找出按下了什么按钮,然后在点击时禁用该按钮。
以下是代码片段:
def change(self,event):
self.Disable()
for i in enumerate(file_pool):
self.button_pool.append(wx.Button(self.sizer, -1, i[1], pos=(20, i[0]*45),size=(200,40))) #this would create the list of buttons
for i in self.button_pool:
i.Bind(wx.EVT_BUTTON, self.change) #bind each button
然而,这将禁用每个小部件,而不仅仅是按下的按钮。我怎样才能禁用点击的按钮?
由于
答案 0 :(得分:12)
你可以从事件中获取你的对象:
def change(self, event):
myobject = event.GetEventObject()
myobject.Disable()