Flash制作鼠标跟随
作者:李然 来源:ChinaByte 添加时间:2006-5-21 11:55:12 1)选择菜单File/New创建一个新电影。选择菜单Modify/Movie设置背景颜色为淡绿色。
2)选择菜单Insert/New Symbol,在弹出的对话框中输入符号名称“欢”,点选Movie Clip模式 ,点击OK,进入符号“欢”的编辑界面。
3)选择文字工具,设置字体为隶书,大小为28,颜色为红色,输入“欢” 字,如图1所示。

图1
4)重复步骤2)--3),分别建立字符“欢”、“迎”、“光”、“临”、“海”、“天”、“网”、“站”的Movie Clip。
5)为实现对鼠标的跟随,必须得到鼠标的位置。在这里,利用了Flash一个非常有用的语句:Drag Movie Clip,它可以实现用鼠标拖动一个对象。在本例中,我们建立一个名为“A0”空的Movie Clip,在设置“A0”的Actions时,选择Lock mouse to center,这样,“A0”的中心即为鼠标的位置,获取鼠标的位置变成了获取“A0”的位置。
选择菜单Insert/New Symbol,在弹出的对话框中输入符号名称“A0”,点选Movie Clip模式 ,点击OK。
6)返回场景Scence1中,为了实现对指定Movie Clip的拖动,Flash要求必须先为要拖动的Movie Clip定义一个Instence Name。
本例中将要拖动的Movie Clip是“A0”,具体做法是:将“A0”拖到工作区,双击“A0”,弹出Instence Properties 对话框,在Instence Name后面的文本框中输入“A0”,如图2所示。

图2
7)双击第一帧,在弹出的Frame Properties 对话框中,选择Actions选项卡,添加语句:Drag Movie Clip,在Target后面的文本框中输入“A0”,或者单击文本框后面的选项按扭,选择Target Editor,在弹出的对话框中,双击已定义Instence Name的“A0”,点击OK,勾选Lock mouse to center。如图3所示。

图3
8)选中Scence1第一帧,将Movie Clip“欢”、“迎”、“光”、“临”、“海”、“天”、“网”、“站”从符号库中拖到工作区,按顺序排好,如图4所示,并分别将“欢”、“迎”、“光”、“临”、“海”、“天”、“网”、“站”的Instence Name命名为A1、A2----A8。

图4
9)完成鼠标跟随分三个步骤:
第一部:利用函数Get property (target,property)获取鼠标的最新坐标,本例中既为“A0”的坐标。函数设置如图5所示。

图5
第二部:利用获取的“A0”坐标,分别计算出每个汉字的坐标,它们与“A0”的高度相等,即Y坐标相同,X坐标分别相差20。如图6所示。

图6
第三部:计算出的坐标值要利用Set property (target,property)赋给每个汉字,Flash系统才会识别。如图7所示。

图7
以上三部的设置按如下操作:双击第一帧,在弹出的Frame Properties 对话框中,选择Actions选项卡,添加如下语句:
Comment: 获得鼠标最新值
Set Variable: "/A0:X" = GetProperty ("/A0",_x)
Set Variable: "/A0:Y" = GetProperty ("/A0",_y)
Comment: 计算每个汉字的坐标
Set Variable: "i" = 8
Loop While (i>=1)
set Variable: "/A"&i&":X" = Eval ("/A"&(i-1)&":X")+20
Set Variable: "/A"&i&":Y" = Eval ("/A"&(i-1)&":Y")
Set Variable: "i" = i-1
End Loop
Comment: 设置每个汉字的坐标
Set Variable: "i" = 8
Loop While (i>=1)
Set Property ("/A"&i, X Position) = Eval ("/A"&i&":X")
Set Property ("/A"&i, Y Position) = Eval ("/A"&i&":Y")
Set Variable: "i" = i-1 End Loop
其中,函数 Eval(Variable):获取某一变量的值;运算符&:连接运算符两边的字符串。
10)选中第二帧,按F6键插入关键帧,双击第二帧,在弹出的Frame Properties 对话框中,选择Actions选项卡,添加Go to and play(1) 语句,设置循环。如图8所示。

图8
11)按下Ctrl+Enter看看效果吧,够酷炫!