actionscript 3-按钮操作[侦听多个事件。[鼠标移过,鼠标移出,鼠标向上]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了actionscript 3-按钮操作[侦听多个事件。[鼠标移过,鼠标移出,鼠标向上]相关的知识,希望对你有一定的参考价值。

actionscript3 version of a more complex button action, which responds to rollover, rollout and clicking. this method uses one single 'buttonstuff' function with a 'switch' inside which causes the function to respond differently, depending on what the user action on the button was.

i think this is a neater way to do it than to have each individual 'addEventListener' trigger a separate function.

in actionscript3, button actions can no longer be attached to the buttons themselves or called from the main timeline. you need to put an 'addEventListener' in the timeline to 'listen' for interaction with the button and then call an appropriate function to deal with that action.

the button needs to have an instance name. in this case it is called 'stupidbutton'
  1. // add event listeners to listen for button events [mouse over, mouse out, mouse up]
  2. // and then - when one happens - trigger the function called 'buttonstuff'
  3. this.stupidbutton.addEventListener(MouseEvent.MOUSE_OVER, buttonstuff);
  4. this.stupidbutton.addEventListener(MouseEvent.MOUSE_OUT, buttonstuff);
  5. this.stupidbutton.addEventListener(MouseEvent.MOUSE_UP, buttonstuff);
  6. // end event listeners
  7.  
  8.  
  9. // buttonstuff function - triggered by the above listeners
  10. function buttonstuff(event:MouseEvent):void
  11. {
  12. // switch to 'switch' what the function does, depending
  13. //on which mouse event the button listener has picked up.
  14. //think of it as standing for "in case of this - do this"
  15. switch(event.type)
  16. {
  17.  
  18. // in 'case' the listener detected a mouse over
  19. case MouseEvent.MOUSE_OVER:
  20.  
  21. // replace the trace with your own button actions
  22. trace("button rolled over");
  23.  
  24. // each case always ends with a 'break'
  25. break;
  26. // end in 'case' the listener detected a mouse over
  27.  
  28. // in 'case' the listener detected a mouse out
  29. case MouseEvent.MOUSE_OUT:
  30.  
  31. // replace the trace with your own button actions
  32. trace("button rolled off");
  33.  
  34. // each case always ends with a 'break'
  35. break;
  36. // end in 'case' the listener detected a mouse out
  37.  
  38. // in 'case' the listener detected a mouse up
  39. case MouseEvent.MOUSE_UP:
  40.  
  41. // replace the trace with your own button actions
  42. trace("button released");
  43.  
  44. // each case always ends with a 'break'
  45. break;
  46. // end in 'case' the listener detected a mouse up
  47.  
  48. }
  49. // end switch to 'switch' what the function does, depending on
  50. //which mouse event the button listener has picked up
  51.  
  52. }
  53. // end buttonstuff function

以上是关于actionscript 3-按钮操作[侦听多个事件。[鼠标移过,鼠标移出,鼠标向上]的主要内容,如果未能解决你的问题,请参考以下文章

ActionScript 3 actionscript 3 - 按钮动作[听多个事件。例如。 MOUSE_OVER,MOUSE_OUT,MOUSE_UP]

ActionScript 3 保存FLA和调用侦听器的JSFL

actionscript 3按钮操作[监听单个事件。例如,鼠标向上移动]

Actionscript 导航不起作用

如何添加侦听多个按钮的动作侦听器

多个 swt 按钮,相同的侦听器 [重复]