AS3 - 显示用户界面元素的坐标

时间:2012-11-07 15:25:11

标签: actionscript-3

我正在寻找一种方法来确定影片剪辑元素的显示/屏幕坐标。

        point = uie.localToGlobal(new Point(uie.x,uie.y));
        posX = point.x + (uie.width  / 2);
        posY = point.y + (uie.height / 2);      

上面的代码只检索舞台中的坐标。但是 - 我需要显示/屏幕坐标和非舞台坐标。

也许有办法检索闪光灯容器的显示/屏幕位置(左上角)或将鼠标移动到舞台内的位置,检索鼠标的屏幕/显示和舞台位置并确定偏移屏幕位置和舞台位置之间。这可能在(!)AS3中吗?

1 个答案:

答案 0 :(得分:1)

这在Flash播放器中是不可能的。您可以尝试使用javascript获取flash容器的坐标,这将获得相对于浏览器窗口的坐标。 Javascript可以获取浏览器相对于桌面的屏幕位置。您需要浏览器的window.screenLeft api。通过这个,您可以获取页面上flash元素的位置并将其添加到浏览器窗口。这将为您提供正确的位置,并且误差范围很小。

您也可以使用Adobe Air实现此目的。使用NativeWindow api。

stage.nativeWindow.x = 0
stage.nativeWindow.y = 0

此代码段会将窗口设置在左上角,例如。