【发布时间】:2012-08-23 22:05:34
【问题描述】:
我正在尝试创建一个布尔值,用于检查鼠标右键是否被按下。用鼠标左键这个方法有效,但是用鼠标右键布尔值保持为真,我该如何解决这个问题?
public var mDown:Boolean = false;
public var rmDown:Boolean = false;
stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseHandler);
stage.addEventListener(MouseEvent.MOUSE_UP, mouseHandler);
stage.addEventListener(MouseEvent.RIGHT_MOUSE_DOWN, mouseHandler);
stage.addEventListener(MouseEvent.RIGHT_MOUSE_UP, mouseHandler);
private function mouseHandler(e:MouseEvent){
switch(e.type){
case MouseEvent.MOUSE_DOWN: mDown = true;
break;
case MouseEvent.MOUSE_UP: mDown = false;
break;
case MouseEvent.RIGHT_MOUSE_DOWN: rmDown = true;
break;
case MouseEvent.RIGHT_MOUSE_UP: rmDown = false;
}
}
我的 Flash 导出到 Flash Player 11.2!也许我可以用 RIGHT_CLICK 试试?
【问题讨论】:
-
如果在鼠标处理程序中跟踪(e.type)会发生什么?
-
那么它只追踪
rightMouseDown -
对我来说工作正常,也许尝试重新安装您正在使用的任何 IDE?
标签: actionscript-3 right-click flash-cs6