В всплывающем окне правой кнопки мыши есть около 5-6 пунктов меню, и привязка их к отдельным методам кажется неуклюжим, так как есть хороший кусок кодов, которые можно использовать повторно, возможно ли это сделать так?Привязать несколько wx.EVT_MENU к тому же методу?
self.Bind(wx.EVT_MENU, self.MenuClicked, id=self.menu1)
self.Bind(wx.EVT_MENU, self.MenuClicked, id=self.menu2)
self.Bind(wx.EVT_MENU, self.MenuClicked, id=self.menu3)
self.Bind(wx.EVT_MENU, self.MenuClicked, id=self.menu4)
self.Bind(wx.EVT_MENU, self.MenuClicked, id=self.menu5)
def MenuClicked(self, event):
detect which menu being clicked
assign specific values to several variables regarding the menu being clicked
rest of the codes.
Я заметил, что нет GetMenu()
для wx.EVT_MENU
, поэтому в основном, как вы узнаете, какое меню в настоящее время щелкнул?
Чувак, вы действительно пробовали эти коды сами? Объект 'CommandEvent 'не имеет атрибута' GetID'', поэтому' GetID() 'не будет работать ... – Shane
Да Чувак. http://stackoverflow.com/questions/6791676/wxpython-get-event-id, http://zetcode.com/wxpython/events/ – Yoriz
О, мой плохой. Я ошибочно опустил его в своем коде ... Спасибо большое! – Shane