在事件处理的过程中涉及四个要素:
1.事件。
它是用户对界面的操作,在wxPython中事件被封装成事件类wx.Event及其子类,例如按钮事件类wx.CommandEvent,鼠标事件类是wx.MoveEvent。
2.事件类型
事件类型给出了事件更多信息,它是一个整数。例如鼠标事件wx.MoveEvent还可以有鼠标的右键按下(wx.EVT_LEFT_DOWN)和释放(wx.EVT_LEFT_UP)等
3.事件源
它是事件发生的场所,就是各个控件,例如按钮事件的事件源就是按钮。
4.事件处理者
它是wx.EvtHnadler子类(事件处理类)中定义的一个方法。
绑定事件源和事件处理者,band()方法语法如下:
Bind(self, event, handler, source = None, id = wx.ID_ANY, id2 = wx.ID_ANY)
其中参数event是事件类型,注意不是事件;handler是事件处理者,它对应到事件处理类中特定的方法;source是事件源;id是事件源的标识,可以省略source参数通过id绑定事件源;id2设置要绑定事件源的范围,当有多个事件源定到同一个事件处理者时可以使用此参数。
事件处理分为两种:
1.一种是一对一事件处理
2.一种是一对多事件处理