IDを用いたeventの設定の仕方。

wxPythonでIDを使ってeventの設定をしてみた。

eventと、eventを設定する部品のIDを一緒にする。

# coding: UTF-8

import wx

ID_EVENT = 101

class MyFrame(wx.Frame):
    def __init__(self, parent, ID, title):
        wx.Frame.__init__(self, parent, ID, title, size=(200, 200))
        panel = wx.Panel(self, -1)
        sizer=wx.BoxSizer(wx.VERTICAL)
        sizer.Add(wx.Button(panel, ID_EVENT, "Click me"), 1, wx.EXPAND)
        panel.SetSizer(sizer)
        wx.EVT_BUTTON(self, ID_EVENT, self.click_event)

        self.Centre()
        self.Show(True)

    def click_event(self, event):
        print "Clicky!"

if __name__ == '__main__':
    app = wx.App(False)
    frame = MyFrame(None, -1, "demo")
    app.MainLoop()

wxPython Style Guide - wxPyWikiによると普通にBindした方がいいみたいだけど。