【发布时间】:2012-08-01 03:52:48
【问题描述】:
我有一个 Sprite 对象,它是一个扑克筹码。当用户点击它时,出价会增加。我正在提高MouseUp 事件的出价。但是,如果用户在对象/芯片之外开始单击,然后将鼠标拖到芯片上并执行MouseUp,它会触发映射到MouseUp 的函数。如果单击在对象外部开始,我如何防止它触发。
this.addEventListener(MouseEvent.MOUSE_DOWN, pressChipDown)
this.addEventListener(MouseEvent.MOUSE_UP, pressChipUp)
this.addEventListener(MouseEvent.MOUSE_OUT, pressChipOut)
private function pressChipDown(e:MouseEvent):void
{
super.x = startX + 5;
super.y = startY + 5;
}
private function pressChipUp(e:MouseEvent):void
{
increaseBid();
super.x = startX;
super.y = startY;
}
private function pressChipOut(e:MouseEvent):void
{
if(e.buttonDown) //if mouse button is down, move chip back but dont increase bid
{
pressChipUp(MouseEvent.MOUSE_OUT as MouseEvent)
}
}
谢谢
【问题讨论】:
标签: events actionscript mouseevent