快速业务通道

Flash AS3教程:用ActionScript侦测鼠标的位置

作者 凌众技术 来源 网页制作 浏览 发布时间 2012-03-08

快速教程:如何用ActionScript侦测鼠标的位置

在这个教程中我们将学习如何用Flash AS3来得到鼠标的当前方位。我们可以用此为游戏创建有趣的控制方法,例如可把鼠标当作一个游戏控制杆。现在我们先展示一下我们的作品。

下面是一个简单的示例:

简单概述

使用鼠标事件来监听鼠标光标的运动,用变量存贮相应数据并展示其当前方位。

第一步:创建一个新文档

打开Flash并创建一个新的Flash文档(ActionScript 3)。

第二步:打开动作面板

按F9或执行窗口>动作打开动作面板。

第三步:变量

键入一些我们将使用的变量,变量名应能一目了然。

var previousX:Number =0;

var previousY:Number = 0;

var currentX:Number = 0;

var currentY:Number = 0;

var xDir:String;

var yDir:String;

var dir:TextField = new TextField();

第四步:主函数

下面是主函数

function getMouseDirection():void

{

dir.width = stage.stageWidth; //文本区域的大小

addChild(dir); //在舞台上添加文本区域

//在舞台上添加一个鼠标事件监听器,并当鼠标运动时执行checkDirection 函数

stage.addEventListener(MouseEvent.MOUSE_MOVE, checkDirection);

}

第五步: Check Direction函数

下面的代码将检测鼠标方位,并将结果展示在舞台文本域上。

function
checkDirection(e:MouseEvent):void

{

getHorizontalDirection();

getVerticalDirection();

dir.text = ”x: ” + xDir + ”, y: ” + yDir;

}

第六步:获取方位

检测鼠标的方向.

//水平方向

function getHorizontalDirection():void

{

previousX = currentX; //检测刚刚的地址

currentX = stage.mouseX; //获取当前的地址

if (previousX > currentX)       //将两个地址进行比较来确定方向

{

xDir = “left”;

}

else if (previousX < currentX)

{

xDir = “right”;

}

else

{

xDir = “none”;

}

}

//垂直方向

function  getVerticalDirection():void

{

previousY = currentY; //检测刚刚的地址

currentY = stage.mouseY; //获取当前的地址

if (previousY > currentY)    //将两个地址进行比较来确定方向

{

yDir = “up”;

}

else if (previousY < currentY)

{

yDir = “down”;

}

else

{

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号