下面介紹如何自訂一個自己的event :
class TwoButtonEvent(wx.PyCommandEvent): #自訂event
def __init__(self, evtType, id):
wx.PyCommandEvent.__init__(self, evtType, id)
self.clickCount = 0
def GetClickCount(self):
return self.clickCount
def SetClickCount(self, count):
self.clickCount = count
myEVT_TWO_BUTTON = wx.NewEventType() #建立新event
EVT_TWO_BUTTON = wx.PyEventBinder(myEVT_TWO_BUTTON, 1) #建立新event binder
上面的部分為定義event和event binder. 在要產生event的地方則是以下面的code來產生event :
evt = TwoButtonEvent(myEVT_TWO_BUTTON, self.GetId())
evt.SetClickCount(self.clickCount)
self.GetEventHandler().ProcessEvent(evt)
利用ProcessEvent來將event產生到queue裡面等待處理.
參考資料 :
http://www.pythontik.com/blog/article.asp?id=192
沒有留言:
張貼留言