- 繁體中文
- 收藏本站
- 关于我们

1. 联系我们
2. 最新动态
3. 服务项目
4. 案例展示
5. 首页

- 张家界CMS开源企业管理系统v1.0.6开源
- 6月17日起管局备案系统升级暂不审核备
- 解决IE6下列表li下面多出来的3像素问题
- 经验分享：FLASHas2.0常用代码大全
- 帝国CMS支付宝接口网关地址更改说明

Best Display Screen Size 1440x900px

# 经验分享：FLASH as 2.0常用代码大全

2013-4-24 17:11:19
点击次数：次[收藏] [打印]
FLASH(as2.0)实用代码大全(1)
外部调用swf
on (release) {
loadMovieNum("service.swf", 1);
}

外部调用数据
loadVariablesNum("about.txt", 0);
System.useCodepage = true;//中文

音乐加入

mySound = new Sound();
mySound.attachSound("1");
mySound.start();

关闭指定音乐

mySound.stop("1");

外部调用音乐
mySound=new Sound();
mySound.loadSound("music.mp3",true);
mySound.start(0,100)

关闭音乐
mySound.stop();

链接场景：

on (release) {
gotoAndStop("猫的历史",1);
}

外部调用
on (release) {
loadmovienum("a.swf",1)
}

清空文本框

_root.text=""

On(Release)
Set Variable:"input" = ""
Set Variable:"output" = ""
End On

轻松实现Flash的全屏播放
许多人都看过这样的效果：把光盘放入光驱后，光盘自动运行，接着便是一段Flash制
作的开场动画，动画是全屏播放的，且右键点击无效，动画播放结束后，出现“关闭”按
钮，单击该按钮后，全屏动画关闭。

其实上面提到的全屏播放以及取消右键菜单等效果都是靠Fscommand指令在发挥作用。
Fscommand指令主要是用来控制Flash影片播放器的，但也可以用来打开其它的应用程序。
Fscommand指令只有在Flash影片播放器执行时才有效（.swf和.exe），在Flash制作过程中
，按“Ctrl+Enter”预览动画，以及把动画发布成网页文件时，此指令无法发挥它的功能
。

Fscommand指令使用的语法是：Fscommand("command","arguments")
Command是指令的相关命令，arguments是命令的参数。

下面我们就来讲讲如何通过Fscommand指令来实现全屏播放、取消Flash播放时的右键
菜单以及关闭Flash动画。

1、全屏播放Flash

“Fullscreen”是全屏的意思，在默认的情况下，Flash动画不是以全屏播放（false
），如果需要让动画以全屏状态播放，就必须把Fullscreen命令设置为True，写为：
Fscommand ("Fullscreen","True");
根据需要，我们可以把它写到帧、按钮、MC（Movie Clip）中。

2、取消右键菜单

Showmenu命令是用来设置是（True）否（false）显示Flash动画播放器的快捷菜单的
全部指令，即右击鼠标时弹出的菜单，默认为True，如果要取消弹出的菜单，必须在第一
帧这样设置：
Fscommand ("showmenu","false");

3、关闭动画

quit命令是用来关闭播放器的.swf和.exe文件，该命令没有参数，写为：
fscommand ("quit")；

如果你想在flash动画结束时出现一个关闭动画的按钮，可以按下面的步骤做。

执行“Insert”下的“New Symbol”（或按Ctrl+F8），在弹出的窗口中选Button，然
后制作一个简单的按钮，回到场景中，选中最后一帧，从“Library”中把刚刚建立的按钮
拖到场景中，因为该按钮在动画的最后才显示。

给按钮写上如下代码，则实现按下按钮即关闭flash动画。

on (release)
{
fscommand ("quit");
}

一、几种Action命令

1．影片的播放与停止：

Play( )；//播放命令 stop( )；//停止命令

2．改变Frame流向命令

gotoAndPlay(frame) //跳到指定的画面并连续播放。

gotoAndStop(frame) //跳到指定的画面并停止播放。

gotAndplay(“场景名称”，frame)//跳到指定场景帧并连续播放。

gotoAndStop(“场景名称：，frlme)//跳到指定场景帧并停止播放。

nextFrame( )；//跳到下一帧播放；

PrevPrame( )；//跳到上一帧播放。

3．控制影片剪辑的播放与停止：tellTarget命令

如：tellTarget(“C1”)

{gotoAndStop(2)；}//跳影片剪辑实例C1的第2帧并停止。

二、几种功能元件的制作方法

1．计时器的制作

单击菜单Insert／new symbol，在弹出的对话框中输入插入的符号名称(如：计时器)，确
定后选择文字工具，属性为动态(Dynamic text)，在第一帧中画两个文本框。分别设置变
量名为munite和timer,在两个文本框之间画一个形如冒号的圆点(这两个圆点可以做成一个
符号，类型为电影片段，每秒闪动一次．然后拖入到两文本框之间。在第二帧插入帧。在
第一帧输入动作脚本(Action)如下：

//设置时间的初值

if(!started) {

start_time=getTimer();

started=true;

timer=0;

i=o;

munite＝0;

}

x=getTimer()-start_time；//计算时间的变化

x=int(x／1000)； //时间的单位为1000分之一秒

y=x-60*i

if (y>59)

{i=i+1；munite=munite+1

timer=timer+1：

}

else

{timer=y}

该符号制作完毕后。将其拖入主场景中即可。

2．智能判断速择题，并作正误提示

单击菜单Insert/new symbo1,在弹出的对话框中输入插入的符名称。如：“对错提示”。
符号类型为“电影片段”。在第一帧输入文本“在括号内输入答案，按enrer键确定“ 在
该帧上输入动作脚本：

_root.flah＝false；_root.ans=" ";gotoAndStop(1);在第16帧插入空关键帧。在该帧上
画一个形如“x”的图或输入文本“x”，在第30帧插入关键帧，帧AAction为_root.ans="
"：gotoAndStop(31)；在第31帧插人空白关键帧，在该帧上输人静态文本“请重作，按e
nter键确定。“在该帧输入脚本：“stop()；”至此，该符号制作主或：例如：

第1题：1十1十( )

A．2 B．3 C．4 D．0

在上例括号位置插入动态文本框，不输入任何内容。该文本框变量名为：ans。在该帧适当
位置插入电影“对错提示”，该电影片断名属性为“ql”，在该电影片断上输人脚本：

//键盘事件控制程序

onClipEvent(keyDown)

}

//取得按键的键值

keycode＝Key.getCode()；

//判断是否为Enter键

if(keycode＝＝Key．ENTER) {

//判断输入的答案是否正确

//answer＝Number(A)

if(_root,ans=="A" or _root.ans=="a"{

//显示“答对了”信息

tellTsrget(_root.q1) {

gotoAndPlay(2)；

}

} else {

//显示“答错了”信息

tellTarget(_root.q1) {

gotoAndplay(16)

}

}

}

}

3．声音的加载和控制

插入一段音乐：在Pile／Import to Library中，找到要插入的音乐(如战马奔腾)，打开符
号库，找到“战马奔腾”符号，单击右键，在弹出的菜单中单击Linkage…命令，再在弹出
的菜单中选中Export for ActionSc选项，在Indentify框内输入标识符：如music。

在需要播放的帧插入如下脚本：

soun=new Sound()；//创建声音实例

sound.attachSound("music")；//将音乐music链接到sound实例

sound.start(0,2)；//播放音乐2遍

sound.setVolume(70)：该音乐的音量为70％。

以上加载音乐通过帧加载，也可以通过按钮加载。

停止音乐的方法：制作一个按钮，在按钮上输人脚本：

on(release)

{

sound.stop()；

}

4．如何用键盘控制帧的跳转

有的教师喜欢用键盘进行操作，如何使这类操作方使自如呢?用Flash MX制作的方法如下：

制作一个符号(如“知识回顾”)，符号类型为“电影片段”。在这个符号中将需要回顾的
知识点逐帧展示，每帧动作脚本为：stop()回到主场景，在需要的帧插入该符号，该帧脚
本为：stop（）；插入后．单击该符号．输人脚本：

onClipEvent(Key Down) {//键盘响应,按下任一键时响应该命令

nextFrame()；

}

这样即实现了按任一键便可跳转到指定帧的效果。此例仅仅是一种基本方法，读者朋友在
应用时可以有更多的扩展。

5．鼠标指向显示填空题答案

显示一些问题的答案，可以将这一答案制成—个按钮，在这一按钮的Up帧可以为空白关键
帧，其它帧为答案内容。在问题的答案处插入该按钮，在该帧输入脚本：

on(release) {

gotoAndStop；//第i帧将答案固定显示在屏幕上

flash场景之间相互跳转的实现方法

作者：佚名 来源：InterNet 加入时间：2005-2-25
在制作flash动画的时候，可能会有有很的mc
有时会把它放到几个场景中，那么在场景中的跳转如何实现呢？
1.
方法一：（使用telltarg...

方法一：（使用telltarget命令）

按钮上的as为：
on (release) {
tellTarget ("/") {
gotoAndPlay ("场景 1", 1);
}
}

2.
方法二（用gotoandpla...

方法二（用gotoandplay命令）
主场景2中的mc放到场景2的时间轴上
按钮的ａｓ：

ｏｎ　ｒｅｌｅａｓｅ　｛
ｇｏｔｏＡｎｄＰｌａｙ（＂场景1＂，１）
}

并且在最后一帧加stop（）
问题就可以解决了：

3.
方法三(利用路径_root.g...

方法三(利用路径_root.gotoandplay())

第二个场景2里面只有一个ｍｃ，在这个ｍｃ的最后一帧是ｓｔｏｐ和一个ｒｅｐｌａｙ按
钮
按钮的as：_root.gotoAndPlay(1)
【即告知按钮回到场景1的第一帧】

4.
方法四（给场景起不同的名字） ...

方法四（给场景起不同的名字）
如果你的as这样写：
第二个ｓｅｎｃｅ里面只有一个ｍｃ，在这个ｍｃ的最后一帧是ｓｔｏｐ和一个ｒｅｐｌ
ａｙ按钮
按钮的ａｓ：

ｏｎ　ｒｅｌｅａｓｅ　｛
ｇｏｔｏＡｎｄＰｌａｙ（＂ｓｅｎｃｅ１＂，１）
｝

结果按下后却是从这个ｍｃ的第一帧开始播放，而不是从ｓｅｎｃｅ１的第一帧
这是因为主场景的名字默认为senceN
MC里也可以有多个场景，而mc也是默认为senceN
所以当你在MC用上gotoAndPlay ("scene1", 1);时，指的是所在场景中MC里的第一帧，而
不是主场景
解决的方法，就是给场景定义不同的名字
scene1我们改名为：主场景
scene2我们改名为：次场景1
正确的as应该为：

on (release) {
tellTarget (_root) {
gotoAndPlay (1);
}
}

如果想实现按钮点击后从次场景播放就可以在按钮上写上：

on (release) {
tellTarget (_root.次场景) {
gotoAndPlay (1);
}
}

5.
方法五（利用标签label） ...

方法五（利用标签label）
我们在控制动画的时候一般也不是从开始播放， 可能是希望从某个场景的某一个关键帧开
始播放，那么标签是
最好的实现方法；
例如我们希望点击上面的按钮的时候让动画从主场景中的label1开始 播放，那么按钮上的
as应该为：

on (release) {
tellTarget (_root) {
gotoAndPlay ("label1");
}

例如有3个场景，我们希望点击上面的按钮的时候让动画从次场景1中的label4开始播放，
那么按钮上的as应该为：

on (release) {
tellTarget (_root) {
gotoAndPlay ("次场景 1", "label4");
}
}

}
}

如果想实现按钮点击后从次场景播放
就可以在按钮上写上：

on (release) {
tellTarget (_root.次场景) {
gotoAndPlay (1);
}
}

3,什么叫矢量图?
矢量图可以任意缩放而不影响Flash的画质，位图图像一般只作为静态元素或背景图，Fla
sh并不擅长处理位图图像的动作，应避免位图图像元素的动画。

4,如何迅速地对齐不同Frame中的物件?
用 Inspector “Ctrl+Alt+I” 直接输入坐标。
或是工具栏〉〉窗口〉〉面板〉〉排列“Ctrl+K” 调出排列面板来。图例

5,怎样调节一个Symbol/MC地透明度?
选中Symbol/MC,菜单栏找到Modify(修改) 〉〉 Instance (实例)〉〉Color effect (效果
)〉〉 Alpha(透明度) 调整就可以了

6,做好地Flash放在html上面以后,它老是循环,怎么能够让它不进行循环？
最后一个祯地Action设置成Stop(停止)

7,怎样给我的FLASH做一个预加载地LOADING?
用Action语法地if frame is loaded来实现,新建一层，这层专门放Action,
第一帧，
ifFrameLoaded ("场景", frame) //假如场景中地祯数已经载入
goto and play() //跳至并播放某某祯(自己设定)
{}
第二帧，
goto and play("场景1", 1)//跳至并播放第一祯循环
再加上一个load地MC循环播放在这两帧的中间，就OK了。

什么?你要非常详细地LOADING?那就当这个源码吧,够详细了.
源码下载

8,怎样点击一个按钮打开一个页面html而不是一个祯.
制作一个按钮,上面地AS直接写:
on (release)
getURL ("***.html");
{}
这里地***.html就是你要打开地页面文件名,当然也可以是某某URL地址,比如说 http://ww
w.flash8.net

9,我在按钮地OVER祯放置了一个很大地MC,为什么我要没有点击到按钮鼠标就变成了手地状
态?
按钮真正激活区是在HIT(按下)祯地位置,如果想控制按钮的位置为一定值,可以在HIT祯绘
制一个透明地图形来判断.

10,如果屏蔽鼠标右键?FS命令都是什么意思?
fscommand ("fullscreen", "true/false");（全屏设置，TRUE开，FALSE关）

fscommand ("showmenu", "true/false");（右键菜单设置，TRUE显示，FALSE不显示）

fscommand ("allowscale", "true/false");（缩放设置，TRUE自由缩放，FALSE调整画面
不影响影片本身的尺寸）

fscommand ("trapallkeys", "true/false");（快捷键设置，TRUE快捷键开，FALSE快捷键
关）

fscommand ("exec");（EXE程序调用）

fscommand ("quit");（退出关闭窗口）

11,在FLASH中的字体总是很模糊,用变清晰地办法吗?
写好文本以后CTRL+T打开文本设置面板,在最后地文本框选项那里框选使用设计字体就行了
.(注意最好使用宋体,尺寸为12或者8,这样比较工整)

12,我想做一个MTV,怎么导入声音呀?
很简单,CTRL+R导入你地声音文件就行了.

13,我制作地MTV声音和歌词总是不同步.
CTRL+F打开祯控制面板,右边找到声音选项卡,调整声音地同步效果为STREM(音频数据流)模
式就行了.

- 上一篇：6月17日起管局备案系统升级 暂不审核备案
- 下一篇：帝国CMS支付宝接口网关地址更改说明

全部 工作室新闻 行业新闻