1、FS Command介绍
FS Command命令是Flash系统用来支持其他应用程序互相传达命令的工具,有在Flash播放器和网页两方面用途。先看看它的基本用法:
FS Command函数设定有'Command'和'Arguments'两项,在Standalone player播放时适用于以下语句:
Command
|
Arguments
|
FS Command
|
Fullscreen
|
true or false
|
控制是否全屏
|
Allowscale
|
true or false
|
右键显示菜单
|
Exec
|
应用程序路径
|
打开应用程序
|
Quit
|
不填
|
关闭动画
|
|
注意:与在网页中,全屏播放的方法是不同的!
2、FS Command页面初级用法
在网页应用上,FS Command有两大功能。
(1)能使Flash向脚本语言发送命令。可以是调用脚本语言中的一段函数或传递变量给脚本语言等。
(2)能使脚本语言(js,vbs)向Flash发送命令。可以是给Flash中定义变量或是直接控制Flash动画的时间线上的跳转或给Flash中定义实体的属性等。
看到了么?它是这样实现的:
(1)用Flash作一个简单的按钮,将按钮的Action设为:
On(Release) FSCommand("alert","Hello,This is FS Command speaking") End On
|
|
(2)将按钮输出为swf,用Dreamweaver插入网页,并起ID名为"button"
(3)在网页<head>与</head>之间加入:
<script language=javascript> function button_DoFSCommand(command,args) {if(command == "alert"){ alert("Now look at this:"+args);} } </script> <SCRIPT LANGUAGE=VBScript> Sub button_FSCommand(ByVal command, ByVal args) call button_DoFSCommand(command, args) end sub </SCRIPT>
|
|
下面对(3)点的语法做一些解释:"function ID_DoFSCommand(command,args)"是引用FS Command的一个固定格式,ID就是swf插入网页后起的ID名字。"if(command="")句的后面要填的就是FlashAction中command栏里填写的内容,"args"是个变量,上例中args代表的就是Argument里的内容。"alert"是"JS"函数,作用是输出信息。看到JS语句后面的一段VBS代码了么?这段代码可是非常重要噢,如果你的浏览器是IE的话,这段代码是必不可少的。
3、FS Command之Flash Methods
Flash Methods指能运行在脚本中并能于Flash沟通的一组特定函数。
在IE中Flash Methods的格式为:ID.FlashMethods
我们还是用学习例子的方法来了解Flash Methods的功能和用法吧:
请点击按钮!看到效果了么?它是这样实现的:
(1)在Flash中画一个文本框,定义其实体名为get,并设置文本的属性为Multiline(允许换行),Word wrap(边界换行)。
(2)制作按钮“提交”和“清除”,分别设置action为:
On(Release) FSCommand("post","") End On On(Release) FSCommand("clear","") End On
|
|
(3)用Dreamweaver将导出的swf插入网页,起ID名为buttonn。
(4)网页代码中加入:
<script language=javascript> function buttonn_DoFSCommand(command,args) {if(command == "post") buttonn.SetVariable("_root.get","哈哈!神奇吧?这是JavaScript说的话!~0~") else if(command == "clear") buttonn.SetVariable("_root.get","") } </script> <SCRIPT LANGUAGE=VBScript> Sub buttonn_FSCommand(ByVal command, ByVal args) call buttonn_DoFSCommand(command, args) end sub </SCRIPT>
|
|
4、Flash Methods函数集
看了上面的例子,你一定对Flash Methods有所了解了吧!下面我来介绍一下Flash Methods的全部函数:
Flash Method函数
|
函数解释
|
Play()
|
播放动画
|
StopPlay()
|
停止动画
|
IsPlaying()
|
动画是否正在播放(true,false)
|
GotoFrame(frame_number)
|
跳转到某帧(frame_number+1)
|
TotalFrames()
|
获取动画总帧数
|
CurrentFrame()
|
回传当前动画所在帧数-1
|
Rewind()
|
使动画返回第一帧
|
SetZoomRect(left,top,right,buttom)
|
放大指定区域
|
Zoom(percent)
|
改变动画大小
|
Pan(x_position,y_position,unit)
|
使动画在x,y方向上平移
|
PercentLoaded()
|
返回动画被载入的百分比(0-100)
|
LoadMovie(level_number,path)
|
加载动画
|
TGotoFrame(movie_clip,frame_number)
|
movie_clip跳转到指定帧数
|
TGotoLabel(muvie_clip,label_name)
|
movie_clip跳转到指定标签
|
TCurrentFrame(movie_clip)
|
回传movie_clip当前帧-1
|
TCurrentLabel(movie_clip)
|
回传movie_clip当前标签
|
TPlay(movie_clip)
|
播放movie_clip
|
TStopPlay(movie_clip)
|
停止movie_clip的播放
|
GetVariable(variable_name)
|
获取变量
|
SetVariable(variable_name,value)
|
变量赋值
|
TCallFrame(movie_clip,frame_number)
|
call指定帧上的action
|
TCallLabel(movie_clip,label)
|
call指定标签上的action
|
TGetProperty(movie_clip,property)
|
获取movie_clip的指定属性
|
TSetProperty(movie_clip,property,number)
|
设置movie_clip的指定属性
|
|
需要说明的是:最后两个函数在获取movie_clip的属性时,是以0到18的数字来表示的。下面列出它们分别代表的意思:
属性
|
作用
|
数字
|
使用方式
|
X Position
|
X坐标
|
0
|
Get,Set
|
Y Position
|
Y坐标
|
1
|
Get,Set
|
X Scale
|
X方向缩放比率
|
2
|
Get,Set
|
Y Scale
|
Y方向缩放比率
|
3
|
Get,Set
|
CurrentFrame
|
movie_clip当前所在帧数
|
4
|
Get
|
TotalFrames
|
movie_clip总帧数
|
5
|
Get
|
Alpha
|
movie_clip的透明度
|
6
|
Get,Set
|
Visibility
|
movie_clip是否可见
|
7
|
Get,Set
|
Width
|
movie_clip的宽度
|
8
|
Get
|
Height
|
movie_clip的高度
|
9
|
Get
|
Rotation
|
movie_clip的旋转度
|
10
|
Get,Set
|
Target
|
movie_clip的路径
|
11
|
Get
|
Framesloaded
|
movie_clip已载入的帧数
|
12
|
Get
|
Name
|
movie_clip的实体名字
|
13
|
Get,Set
|
DropTarget
|
movie_clip的拖拽
|
14
|
Get
|
Url
|
包含movie_clip的动画的url
|
15
|
Get
|
HighQuality
|
设置画面质量为高质量
|
16
|
Get,Set
|
FocusRect
|
显示按钮边框
|
17
|
Get,Set
|
SoundBufTime
|
预设声音缓冲时间
|
18
|
Get,Set
|
|
到此为止,FS Command的全部用法就介绍完了。我们可以看到,FS Command为Flash打开了一个使用脚本语言的接口,这可以弥补Flash在函数上的不足。 所以,利用好这个方法,将使我们在制作Flash动画时如虎添翼!