出了菜单可以响应用户事件外,cocos2d中的层(Layer)也可以响应事件。层能够自动响应窗口事件,这些事件主要是键盘和鼠标事件,cocos2d中事件处理是通过Pyglet的事件处理完成的。 1.键盘
出了菜单可以响应用户事件外,cocos2d中的层(Layer)也可以响应事件。层能够自动响应窗口事件,这些事件主要是键盘和鼠标事件,cocos2d中事件处理是通过Pyglet的事件处理完成的。
1.键盘事件
层中的键盘事件主要有两个on_key_press和on_key_release,当这些事件触发时会调用如下方法:
on_key_press(key,midifiers)。键盘按下时触发on_key_press事件,调用该方法,参数key是被按下的键的编号,参数modifiers用来判断一些特殊键
on_key_release(key,midifiers)。键盘释放时触发on_key_press事件,调用该方法,参数key是被按下的键的编号,参数modifiers用来判断一些特殊键
2.鼠标事件
层中鼠标事件一共有三个,on_mouse_oress,on_mouse_release,on_mouse_drag,当这些事件触发时会调用这些方法:
on_mouse_press(x,y,button,modifiers).鼠标按下时会触发改事件,x,y是鼠标的坐标,button是鼠标的键,左中右三个键,modifiers是用来判断特殊按键的。
on_mouse_release(x,y,button,modifiers).鼠标释放时会触发改事件,x,y是鼠标的坐标,button是鼠标的键,左中右三个键,modifiers是用来判断特殊按键的。
on_mouse_drag(x,y,,dx,dy,button,modifiers).鼠标拖动时会触发改事件,x,y是鼠标的坐标,dx,dy是鼠标拖拽的向量距离,button是鼠标的键,左中右三个键,modifiers是用来判断特殊按键的。