问题描述
|
我有一个Flash电影,它在首次加载时向用户显示一条消息。当用户的鼠标进入舞台或移动鼠标时,消息消失。但是,如果用户的鼠标在页面加载时的Flash电影上移动,我想隐藏该消息。这可能吗?还是需要首先进行交互?
谢谢
解决方法
您可以创建一个Rectangle对象,其值与舞台的
x
,y
,width
和height
相同。然后,创建一个条件(if语句),以检查启动应用程序时Rectangle
对象是否包含阶段的mouseX
和mouseY
值。以下是对此的简单测试:
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Rectangle;
import flash.text.TextField;
public class Main extends Sprite
{
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE,init);
}// end function
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE,init);
var textField:TextField = new TextField();
addChild(textField);
var stageRect:Rectangle = new Rectangle(stage.x,stage.y,stage.stageWidth,stage.stageHeight);
if (stageRect.contains(stage.mouseX,stage.mouseY))
{
textField.text = \"mouse is inside stage upon initiation\";
}
else
{
textField.text = \"mouse is outside stage upon initiation\";
}// end if
}// end function
}// end class
}// end package