Apache flex 鼠标坐标动作
在Flex中有没有一种方法可以做到:Apache flex 鼠标坐标动作,apache-flex,actionscript-3,if-statement,coordinates,mouseevent,Apache Flex,Actionscript 3,If Statement,Coordinates,Mouseevent,在Flex中有没有一种方法可以做到: if mouseClick x<300&y<200 currentState=''; 如果鼠标单击x许多对象会发送一个单击事件;在单击事件属性中,您可以使用stageX和stageY属性访问x和y位置 然而,我不认为在某个特定位置监听点击事件而不将其作为该位置的UI元素是可能的 我还质疑,为这种状态变化硬编码x和y位置是否是一个好主意;因为不同的机器、不同的屏幕大小和分辨率可能会使您的内容大小不同 您可以将侦听器添加到后台以捕获所有单
if mouseClick x<300&y<200 currentState='';
如果鼠标单击x许多对象会发送一个单击事件;在单击事件属性中,您可以使用stageX和stageY属性访问x和y位置
然而,我不认为在某个特定位置监听点击事件而不将其作为该位置的UI元素是可能的
我还质疑,为这种状态变化硬编码x和y位置是否是一个好主意;因为不同的机器、不同的屏幕大小和分辨率可能会使您的内容大小不同 您可以将侦听器添加到后台以捕获所有单击:
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
[SWF(width='500', height='300', backgroundColor='#ffffff', frameRate='30')]
public class ClickTest extends Sprite
{
public function ClickTest()
{
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
private function addedToStage(event:Event):void
{
stage.addEventListener(MouseEvent.CLICK, handleClick);
}
private function handleClick(event:MouseEvent):void
{
if((stage.mouseX < 300) && (stage.mouseY < 200)
{
trace("CLICKED WHERE I WANT");
}
}
}
}
包
{
导入flash.display.Sprite;
导入flash.events.Event;
导入flash.events.MouseEvent;
[SWF(宽度='500',高度='300',背景色='#ffffff',帧率='30')]
公共类ClickTest扩展了Sprite
{
公共函数ClickTest()
{
addEventListener(Event.ADDED_至_阶段,AddedStatage);
}
私有函数addedStatage(事件:事件):void
{
stage.addEventListener(MouseEvent.CLICK,handleClick);
}
私有函数handleClick(事件:MouseEvent):void
{
如果((stage.mouseX<300)和&(stage.mouseY<200)
{
跟踪(“单击我想要的位置”);
}
}
}
}
即使将精灵放置在界面顶部,这似乎也能起作用