- AS代码收集 - [ Flash ]
- 外部调用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帧插人空白关键帧,在该帧上输人静态文本“请重作,按enter键确定。“在该帧输入脚本:“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场景之间相互跳转的实现方法
- 在制作flash动画的时候,可能会有有很的mc
- 有时会把它放到几个场景中,那么在场景中的跳转如何实现呢?
- 1.方法一:(使用telltarget命令)
- 按钮上的as为:
- on (release) {
- tellTarget ("/") {
- gotoAndPlay ("场景 1", 1);
- }
- }
- 2.方法二(用gotoandplay命令)
- 主场景2中的mc放到场景2的时间轴上
- 按钮的as:
- on release {
- gotoAndPlay(”场景1”,1)
- }
- 并且在最后一帧加stop()
- 问题就可以解决了:
- 3.方法三(利用路径_root.gotoandplay())
- 第二个场景2里面只有一个mc,在这个mc的最后一帧是stop和一个replay按钮
- 按钮的as:_root.gotoAndPlay(1)
- 【即告知按钮回到场景1的第一帧】
- 4.方法四(给场景起不同的名字)
- 如果你的as这样写:
- 第二个sence里面只有一个mc,在这个mc的最后一帧是stop和一个replay按钮
- 按钮的as:
- on release {
- gotoAndPlay(”sence1”,1)
- }
- 结果按下却是从这个mc的第一帧开始播放,而不是从sence1的第一帧
- 这是因为主场景的名字默认为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)
- 我们在控制动画的时候一般也不是从开始播放, 可能是希望从某个场景的某一个关键帧开始播放,那么标签是最好的实现方法;
- 例如我们希望点击上面的按钮的时候让动画从主场景中的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的画质,位图图像一般只作为静态元素或背景图,Flash并不擅长处理位图图像的动作,应避免位图图像元素的动画。
- 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了。
- 8,怎样点击一个按钮打开一个页面html而不是一个祯.
- 制作一个按钮,上面地AS直接写:
- on (release)
- getURL ("***.html");
- {}
- 这里地***.html就是你要打开地页面文件名,当然也可以是某某URL地址,比如说http://www.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(音频数据流)模式就行了.
- 14,为什么我做出来地MTV文件很大呀?
- 参看这篇贴子
- 15,FLASH地发布设置都有些什么?透明背景怎样设置?
- 图解图1图2图3
- 在Dreamewaver中地设置:
- 图解
- (由FLASHWEB提供图材)
- 16,怎样可以做出很漂亮地字体特效?
- 用第三方软件Swish和Swfx这些,闪吧地软件资源有下载.
- 19,如何加载一个SWF文件
- loadMovieNum地技巧
- 添加一个空地MC。实体名为ok,ACTION:
- loadMovie ("dr/test.swf", "_root.ok");
- 控制这个MC的位置,大小等相对属性(Property)就会影响调入SWF的位置和大小。
- setProperty ("mc", _xscale, "****");
- setProperty ("mc", _yscale, "****");
- setProperty ("mc", _x, "****");
- setProperty ("mc", _y, "****");
- setProperty ("mc", _Alpha, "****"); ............
- 20,如何导入一个背景透明度效果比较好地位图?
- 推荐使用PNG格式(FIREWORK),FLASH对PNG位图地融合透明效果支持相当好。
- 21.问: 如何用actionscript将页面设为首页和加入收藏夹?
- 答: 一,用getURL的方法:
- 设为首页:
- on (release)
- getURL("javascript:void(document.links[0].style.behavior='url(#default#homepage)');void document.links[0].setHomePage('http://www.flashempire.com/');", "_self", "POST");
- {}
- 加入收藏夹:
- on (release)
- getURL("javascript:void window.external.AddFavorite('http://www.flash8.net','闪吧');", "_self", "POST");
- {}
- 二,用fscommand的方法,有点复杂
- 1,先在flash的按钮上添加代码:
- 首页:
- on (release)
- fscommand("setHomePage", "http://www.flash8.net");
- {}
- 收藏夹:
- on (release)
- fscommand("addFavorite", "http://www.flash8.net|闪吧");
- {}
- 然后在发布设置中选择flash with fscommand,发布成html
- 2,修改html:
- 找到
- // Handle all the the FSCommand messages in a Flash movie
- function sethomepage_DoFSCommand(command, args)
- {}
- 这一段,修改成:
- // Handle all the the FSCommand messages in a Flash movie
- function sethomepage_DoFSCommand(command, args)
- var sethomepageObj = InternetExplorer ? sethomepage : document.sethomepage;
- if (command == "setHomePage") {
- document.links[0].style.behavior = "url(#default#homepage)";
- document.links[0].setHomePage(args);
- {} else if (command == "addFavorite")
- args = args.split("|");
- window.external.AddFavorite(args[0], args[1]);
- {}
- }
- 最后,如果html里一个链接都没有,还需?lt;SCRIPT LANGUAGE=javascript>这句的前面添加一句<a href="javascript:"></a>
- 22.问: 怎么让动画放完后自动关闭?
- 答: 在最后一桢的ACTION里选FSCOMMOND一项,然后在右边选中QUIT,就可以了
- 23。问: 怎样引入透明的位图?
- 答: 最好输入png文件。png是fireworks文档。当然你也可以输入GIF89a格式的透明GIF图片。
- 24。问: 如何在Flash中打开一个定制的浏览器新窗口?
- 答: 这个问题,很常见,也讨论过无数次,以前的一些有用的帖子找不到了,现在重新整理如下:
- 常用也是很简单的方法是用类似
- Get URL ("javascript:window.open('new.htm','newwin','width=320,height=320');")
- 这样的一句,但有很多问题,比如打开了新窗口后,原窗口的内容也被替代了。
- 1、在Flash中需要执行打开新窗口动作的地方插入以下语句:
- FS Command ("open_window", "filename.htm;newwin;toolbar=no,location=no,status=no,
- menubar=no,scrollbars=no,resizable=no,width=320,height=200")
- 其中Arguments:
- filename.htm 要打开的文件名
- newwin 新窗口的名字
- toolbar=no,location=no,status=no,
- menubar=no,scrollbars=no,resizable=no,width=320,height=200 新窗口的有关属性,包括尺寸
- 注意以上三部分要用分号";"分隔
- 2、在File>Publish setting...中设定
- HTML中的Tempalte : Flash with FSCommand
- 发布
- 3、编辑发布生成的html文件,找到以下一段:
- code:--------------------------<SCRIPT LANGUAGE=javascript>
- <!--
- var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
- // Handle all the the FSCommand messages in a Flash movie
- function Movie1_DoFSCommand(command, args)
- var Movie1Obj = InternetExplorer ? Movie1 : document.Movie1;
- //
- // Place your code here...
- //
- {}
- ...
- -------------------------------------------------
- 改为:
- code:-------------<SCRIPT LANGUAGE=javascript>
- <!--
- var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
- // Handle all the the FSCommand messages in a Flash movie
- function Movie1_DoFSCommand(command, args)
- var Movie1Obj = InternetExplorer ? Movie1 : document.Movie1;
- // Place your code here...
- if (command == "open_window")
- {
- arg_array=args.split(";");
- window.open(arg_array[0],arg_array[1],arg_array[2]);
- {}
- }
- ...
- --------------------------------------
- OK!
- 如果是插入现有的html页,可以先发布,再copy相应的代码到html文件。
- 25。问: 如何用action控制倒放?
- 答: 做一个mc放在合适的地方,里面有两帧
- 第一帧:
- If (GetProperty ("/a",_currentframe)<=1)
- Begin Tell Target ("/a")
- Go to and Stop (GetProperty ("/a",_totalframes))
- End Tell Target
- Else
- Begin Tell Target ("/a")
- Go to and Stop (GetProperty ("/a",_currentframe)-1)
- End Tell Target
- End If
- 第二帧:
- Go to and Play (1)
- 这样就可以让/a倒放
- 但是还有一个问题无法解决:
- 如果我只想停一段呢?[/color]
- 比如说,我在第十个关键帧处加了一个STOP,在第三十个关键帧处加了一个STOP,现在想倒到STOP处停下来,却没有办法做到。
- If (GetProperty ("/a",_currentframe)<=1)
- Begin Tell Target ("/a")
- Go to and Stop (GetProperty ("/a",_totalframes))
- End Tell Target
- Else
- Begin Tell Target ("/a")
- Go to and Stop (GetProperty ("/a",_currentframe)-1)
- End Tell Target
- End If
- 第二帧:
- Go to and Play (1)
- 这一段肯定放在一个mc 里,
- 假设这个mc为/b
- 在/a需要停止的帧理设置
- Begin Tell Target ("/b")
- stop
- End Tell Target
- stop
- 就可以了
- 26。问: 内部声音角色与外部声音角色有何差异?
- 答: 没什么太大的区别
- 外部文件如果导入的话可以降低文件的大小
- 在发布的时候或者做成光盘的时候需要和DCR文件一起走,并且始终保持相对路径不变
- 还有一个流式播放的问题
- 如果导入的声音文件过大就会影响同步效果,声音滞后。(因为Director在播放内部声音之前就将其预栽到RAM中)外部声音文件是流式的,一边播放,一边下载。但要注意连接路径问题。
- 27。问: 如何使声音无限循环?
- 答: 将声音的循环次数定义成足够大,如果你的音乐设为STREM(音频数据流)那你的swf文件也会足够大。
- 28。问: 如何控制声音的播放及停止
- 答: 在library 里右健点击声音文件,选linkage…
- 设置Export This Symbol
- entifier:
- 取名为"sound"
- 然后就可以在stage里面设置了
- s = new Sound();
- s.attachSound("sound");
- 要让声音sound关掉只须
- 执行:
- s.stop();
- 要让他开始播放就是
- s.start();
- 29.问: 如何调入SWF文件及控制它的大小和位置?
- 答: 一、如何调入一个SWF文件:
- 调入一个SWF置给一个层loadMovieNum ("path/movieFile.swf", 0);
- 其“path/movieFile.swf”为要调入文件的地址,“0”为层号,“0”为第0层;
- 调入一个SWF置给一个MC
- loadMovie ("path/movieFile.swf", "MC_Name");其“path/movieFile.swf”为要调入文件的地址,“MC_Name”是MC的名字。
- 二、如何改变调入后的SWF大小:
- setProperty ("MC_Name", _xscale, size_x);
- setProperty ("MC_Name", _yscale, size_y);
- “MC_Name”顾名思义是那个MC的名字了,“_xscale”和“_yscale”是指这个MC的X与Y点的位置,这个位置是用来控制MC大小的。其“size_x”和“size_y”为设定这个MC具体大小的数值。
- 三、如何改变其位置:
- 一个简单的方法是,我们可以来移动那个已给置入MOVIE文件的MC,就像我们用来改变一张图的位置那样用鼠标拖动它。
- 另一个方法是利用setProperty来进行改变这个MC的位置。
- setProperty ("MC_Name", _x, "position_x");
- setProperty ("MC_Name", _y, "position_y");
- “MC_Name”是MC的名字,“_x”和“_y”指的是X坐标和Y坐标点,而“position_x”与“position_y”是位置具体的数值。
- 希望各位能明白我这个简单的教程!以上代码均为FLASH5为标准。 作者: 雨花石
- 30.问: 如何优化Flash动画,使文件更小,播放更流畅?
- 答: Flash作为Macromedia公司出品的网页制作与动画创作的专业软件,操作简便,功能强大,现已成为交互式矢量图形和Web动画事实上的标准。
- 但是,如果制作的Flash电影文件较大,动辄几百k的话,常常会让网上浏览者在不断等待中失去耐心。对Flash电影进行优化就显得很有必要了,但前提是我们不能有损电影的播放质量。
- 1.多使用符号(Symbol)。如果电影中的元素有使用一次以上者,则应考虑将其转换为符号。重复使用符号并不会使电影文件明显增大,因为电影文件只需储存一次符号的图形数据。
- 2.尽量使用渐变动画。只要有可能,应尽量以“移动渐变”(Create Motion Tween)的方式产生动画效果,而少使用“逐帧渐变”(Frame-By-Frame)的方式产生动画。关键帧使用得越多,电影文件就会越大。
- 3.多采用实线,少用虚线。限制特殊线条类型如短划线、虚线、波浪线等的数量。由于实线的线条构图最简单,因此使用实线将使文件更小。
- 4.多用矢量图形,少用位图图像。矢量图可以任意缩放而不影响Flash的画质,位图图像一般只作为静态元素或背景图,Flash并不擅长处理位图图像的动作,应避免位图图像元素的动画。
- 5.多用构图简单的矢量图形。矢量图形越复杂,CPU运算起来就越费力。可使用菜单命令Modify (修改)/Curves(曲线)/Optimize(优化),将矢量图形中不必要的线条删除,从而减小文件。
- 6.导入的位图图像文件尽可能小一点,并以JPEG方式压缩。
- 7.音效文件最好以MP3方式压缩。MP3是使声音最小化的格式,应尽量使用。
- 8.限制字体和字体样式的数量。尽量不要使用太多不同的字体,使用的字体越多,电影文件就越大。尽可能使用Flash内定的字体。
- 9.不要包含所有字体外形。如果包含文本域,则应考虑在Text Field Properties(文本域属性)对话框中选中Include Only Specified Font Outlines(只包括指定字体外形),而不要选择Include All Font Outlines (包括所有字体外形)。
- 10.尽量不要将字体打散(菜单命令为Modify / Break Apart)。字体打散后就变成图形了,这样会使文件增大。
- 11.尽量少使用过渡填充颜色。使用过渡填充颜色填充一个区域比使用纯色填充区域要多占50字节左右。
- 12.尽量缩小动作区域。限制每个关键帧中发生变化的区域,一般应使动作发生在尽可能小的区域内。
- 13.尽量避免在同一时间内安排多个对象同时产生动作。有动作的对象也不要与其它静态对象安排在同一图层里。应该将有动作的对象安排在各自专属的图层内,以便加速Flash动画的处理过程。
- 14.用Load Movie命令减轻电影开始下载时的负担。若有必要,可以考虑将电影划分成多个子电影, 然后再通过主电影里的Load Movie、Unload Movie命令随时调用、卸载子电影。
- 15.使用预先下载画面。如果有必要,可在电影一开始时加入预先下载画面(Preloader),以便后续电影画面能够平滑播放。较大的音效文件尤其需要预先下载。
- 16.电影的长宽尺寸越小越好。尺寸越小,电影文件就越小。可通过菜单命令Modify(修改)/Movie(电影),调节电影的长宽尺寸。
- 17.先制作小尺寸电影,然后再进行放大。为减小文件,可以考虑在Flash里将电影的尺寸设置小一些,然后导出迷你SWF电影。接着将菜单File(文件)/Publish Settings…(发布设置…)中HTML选项卡里的电影尺寸设置大一些,这样,在网页里就会呈现出尺寸较大的电影,而画质丝毫无损、依然优美。
- 在进行上述修改时,不要忘记随时测试电影的播放质量、下载情况和查看电影文件的大小。
- [转载]
- 31.问:为什么在用flash做“沿轨迹运动”时总是沿直线运动,和教程对照了一下,做法完全一样,怎么不行?
- 答:这个问题似乎总会困扰初学者,但实际上问题很简单。首尾2帧中心位置没有放准在轨迹上。一个简单的检查办法:你把屏幕大小设定为4 00%或更大,察看图形中间出现的圆圈是否对准了运动轨迹。
- 32。问:为什么我在 FLASH 中做旋转为什么总是转不快。有什么办法可以转快一点呢?
- 答:你把播放速度调快,比如38祯/秒,方法:主菜单->modify(修改)->movies(影片),加大Frame rate(影格速度)的值便可
- 33。问:请问制作按钮时,“hit"是用来做什么的?什么时候需要用到?[/color]很多教程都没具体讲解"hit"的用法。[/color]
- 答:hit是指定按纽的激发区域。在HIT内设定的区域在播放时是不会显示出来的。如果没有指定HIT区域,一般FLASH会默认你的按纽区域作为激发区域。比如:用文字做按钮时,最好能定义一个矩形来做触发区,而不是系统默认的文字内容。
- 34。问:如何把flash放到FP2000、FP98中去?
- 答:FP98和FP2000对FLASH的支持较差,不能直接在其中插入FLASH动画,解决办法是在SWF文件发布、原代码生成后,把HTML文件中的< ; ;OBJECT>部分拷过去便可。建议使用DREAMWEAVE来制做FLASH动画网页,会方便很多。
- 35。问:如何把一个fla文件输出成和swf一样的gif文件
- 答:先在Publish settings(发布设置)->format(格式)->Gif image(gif 影像),并对其进行相应的设置之后,用Publish(发布)功能便可输出GIF文件。如果FLA文件中含有MC,那么GIF文件中将不会包含MC中的动画,而将只将M C的第一桢转化为GIF。
- 36。问:把做好的一个只有十几K的FLASH放入网页中后,预览网页时,为什么要等好长时间FLASH才能被显示。
- 答:检查SWF文件的名字.路径是否正确,如果不正确系统会试图长时间等待。
- 37。问:如何设置FLASH的背景?
- 答:设定背景颜色可以按Ctrl+M,选color项里的BACKGROUND(背景),如果想用一幅图形做背景只需在最下的一个层import(输入)一幅图像便可。
- 38。问:在FLASH中,怎样画一个圆圈,如何修改圆圈的颜色?
- 答:画圆的时候把填充色(颜色设定的左上角选项)设为无就可以了!把边框的颜色设定为相应颜色便可。
- 39。问:怎样做到字列成环型并围绕圆心转动?
- 答:你可以用CORELDRAW软件或者相关软件来做好了,再导入到FLASH中便可!
- 40。问:外部导入txt如何变字体的颜色?
- 答:在设定文本框时,设定字体的颜色。
- 41。问:才打开FLASH4时使用铅笔工具画圆时还可以,但再次新建一个时用铅笔工具画圆时(模式是平滑)画出来的却不是一个圆或者椭圆!这是怎么回事?
- 答:按住Shift的同时画圆,你能画的更圆!
- 42。问:我做出来的文字与图形总是很难对齐,请问如何对齐目标,并把它们放到你想要的位置。
- 答:选中目标,然后从主菜单->windows(窗口)->inspector(查看窗)->object(对象)然后便可以调节它的高(h)、宽(w )、起始位置(x,y)和是否中心对齐(use center)。
- 43。问:FLASH4的多个场景之间如何调整播放次序?
- 答:主菜单->windows(窗口)->inspector(查看窗)->Scene(场景),可以对场景进行调整播放次序、改名、删除等操作。
- 44。问:请问在Linux下如何观看flash动画,有插件for Linux的么?
- 答:http://www.openswf.org/有。
- 45。问:刚下载安装的Flash插件已落户在电脑的什麽地方?
- 答:在C:WINDOWSSYSTEMMacromedFlash里看看
- 46。问:如何将fla文件直接生成exe文件?
- 答:带有标题栏的swf文件可以通过菜单直接生成exe,是在Flash Player打开swf文件,然后选择file(文件)->creat projector(建立项目)。如果加上了FS命令将文件全屏显示后标题栏没了,便可用CTRL+F热键来生成。生成的执行文件内置了播放器,将比S WF文件大二百多K。
- 47。问:请问如何把做好的flash转换成屏幕保护程序?
- 答:用SWF browser 2.8或screensaver。http://iching.topcool.net/下载。
- 48。问:请问如何借用别人作品中的内容。是否可以将SWF文件完全解码成FLA文件。
- 答:用SWF browser 2.8可以解开别人的SWF文件,将其中的图像.声音取出保存。到目前为止还没有任何一个软件可以将SWF文件完全反变换成FLA文件。
- 49。问:如何在FLASH中实现3D效果。
- 答:在FLASH中不能其接生成3D的动画,需借助其它的软件才行。比如3D MAX,然后再安装上vecta3D或者Illustrate! 4.0(4.1)插件便可以直接输出swf格式的动画了。
- 50。问:FLASH的动画背景可以是透明的吗?如何设置?
- 答:当然可以,在发布设定中的HTML栏中有一项是窗口模式,选透明的窗口一项就OK。若是在html中引用flash可在html文件中的前加上下面的语句: 。不过透明只能在IE中可以,在NC中便失效了。
- 51。问:有什么方法能把普通位图图片转换成矢量图片呢?
- 答:用AdobeStreamline软件,http://iching.topcool.net/有软件下载并有一简单教程,或用FreeHand8转换亦可。
- 52。问:请问那种格式为矢量图?用那个软件可以浏览这些矢量图?
- 答:*.ai *.eps *.wmf *.cdr,其中前面三种可以在FLASH中直接引用。cdr格式需转换成前三种格式方可引用。如果你安装了CORLDRAW 便可以在资源管理器中直接预览CDR格式的图形。其他格式的还没有软件能够象ACDSee浏览普通图片一样大量浏览。
- 53。问:在SWF中,怎样去掉点击鼠标右键所出现的内容?
- 答:在publish settings里面有show menu的勾选。但是对于网页上的flash它始终会出现flash字样。如果你把它做成exe文件的话,就什么也没有了。
- 54。问:如何让双击SWF文件时可以直接满屏播放?
- 答:在最后一桢的ACTION里选FSCOMMOND一项,然后在右边选中fullscreen,true,便可!
- 55。问:如何制作音乐开关?
- 思路:将音乐放入MC,用Tell Target来控制这个MC的播放和停止。
- 相关文章或源文件: www.flashempire.com/tutorial/tutor/t3.html 作者:边城浪子 netschool.cpcw.com/homepage/tool/flas h4/advanced/advanced20.htm 作者:小东瓜
- 56。问:请问如何调节音量
- 答:用纯粹的FLASH不能连续调节音量,只能分段调节。
- 在http://netschool.cpcw.com/homepage/tool/flash4/advanced/advanced21.htm 有小东瓜写的教程。
- 58。问:在网页中如何分帧来控制FLASH动画
- 答:晨曦空间有教程。http://starwind.yeah.net 作者:newfish
- 59。问:如何使声音无限循环?
- 答:将声音的循环次数定义成足够大便可。
- 60。问:怎样才能截取音乐?
- 答:闪光地带(http://zippy.yeah.net)里面有SoundForge,用内录的方法录制 ,效果非常好,如果音量变小了,用effect 里面的dynamic--graphic--expand可以扩大。另外CoolEdit、GoldWave 也是很不错的选择。
- 61。问:我想在一个CD 或 VCD 里面保存一个声音文件是怎么样保存的呢? 我想我所保存的声音可以导出在FLASH 里面使用。请问Flash中如何加入.mp3?
- 答:用sthvcd,vcdcutter或其他东东剪下来就可以了。Flash中不能加入mp3,若为mp3格式,可通过winamp或其它软件转成wav,然后要编辑的话用s oundforge 4.5。
- 62。问:那里有Sound Forge 4.5的教程?
- 答:http://yongong.topcool.net/ 音乐编辑那个栏目。
- 63。问:请问如何把midi转换成wav?
- 答:MIDI转EAV的方法如下:
- 1。用WINGROOVE这个软波表直接转换,不过音色是WINGROOV自带的,没有得选择余地的!所以这是最简单最原始的方法,效果一般!这个软件在h ttp://www.cc.rim.or.jp/~hiroki/english有下载。
- 2。用两个声卡,一个放一个录。放的那边用软波表,如YAMAHA100等或者声卡自带的硬波表,录音后还可以降噪!此方法还可以!但是如果结合下面的方法就更好了!
- 3。用软音源软件,如REALITY或者GIGASAMPLER等代替波表,使用专门的音色库来转,这样只要一个声卡就解决问题了!此方法可以使用你认为最好的音色,音质也是几乎没得挑剔的,W AV的质量接近下面的 方法了!
- 4。如果你钱很多的话,就用专门的音源和硬盘录音机吧!
- 64。问:如何才能将文字或图画做变形?
- 答:Ctrl+B把动作的头和尾打散后即可!symbol是不能做shape的。
- 65。问:如何制作边缘模糊的MASK效果?
- 答:在做好MASK效果后再在其上面加一层有模糊边缘的色块。
- 66。问:怎么做出象电视受干扰时的雪花啊?
- 答:先画一些短的白线条(细一点,稍微有点灰度),然后做几个关键帧,每帧里随机的放一些,连续播放一下就有效果了。
- 67。问:请问如何将文字或图镂空?
- 答:打散字或者图形,先用涂边框工具将它的边缘上色,然后再选中中间部分将之删除便可。
- 68。问:如何通过按钮给别人发E-mail.
- 答:get url:mailto:flash8@flash8.net
- 69。问:如何用GET URL功能打开一个窗口
- 答:在get url中输入javascript:op('dongua.htm',550,400),get url支持简单的javascript语句,这种方法跟选择_blank不同。
- 70。问:在主页中,flash文件老是自己重复播放,不知怎样实现只播放一次
- 答:在最后一桢的ACTION中加上STOP语句!
- 71。问:关键帧中的脚本里stop后的脚本会不会起作用?
- 答:stop语句只停止帧的播放,并不能停止该STOP所在关键帧的ACTION语句的执行。
- 72。问:我如可才能把“别人网页”中的SWF文件下载到自已的硬盘上呢?
- 答:方法1、在FLASH动画上单机鼠标右键,选目标另存为……OK!
- 方法2、在你的浏览器缓冲目录里面有你看过FLASH的SWF文件!一般情况下系统的默认目录是:
- windows->Temporary Internet Files,查找swf文件,其中保存的swf文件数量跟浏览器设定的缓存空间有关,然后将它COPY出来便可。
- 73。问:请问一串字或一幅图由模糊变清晰的效果怎样做?
- 答:刚开始的时候将ALPHA(透明度)设小一些,最后位置的ALPHA=100%,关键祯之间用MOTION变化。注意,是SYMBOL才能MOTION,除了用a lpha外,最关键的还是要用相同内容不同的层来错开,做出模糊的效果!
- 74。问:打字的效果是怎么做的(就是字一个一个地出来)需要把每个字都转换成组件吗?
- 答:
- 方法1、为每一个字建立一个MC,然后在第一帧中引用第一个字,隔两至三祯,按F6,复制关键祯,再引用第二个字,再隔两,三祯,按F 6,引用第三个,以此类推。如果加上打字的音效,效果会更好。本方法适于字数较少的地方。
- 方法2、如果你只是简单地让它们出现,可以在字上加一层,然后用底色做一个矩形,把字遮住。并将矩形设定为MC,给实体命一个名字(i nstance name),然后用Set Property语句编程实现矩形的跳着移动便可。这种办法适于字数较多的地方。
- 75。问:如何计算sin、cos等函数?
- 思路:利用有关的数学公式将函数转换
- 相关文章或源文件: www.flashempire.com/tutorial/tutor/t12.html 作者:小魔女 dongua.163.net/flash4/fla/function.fla 东瓜茶轩
- 76。问:要得到a值除以b值所得到的余数,其表达式该怎么写?
- 答:a-b*int(a/b)便可!
- 77。问:如何在FLASH中重复播放部分影格N次然后再跳转?
- 答:Set Variable: "i" = 1
- Set Variable: "time" = 5
- comment:time表示重复次数。
- comment:以下是想重复的内容帧名为repeat
- …………
- If (i<=time)
- Set Variable: "i" = i+1
- Go to and Play (repeat)
- End If
- 便可。
- 78。问:如何制作鼠标跟随动画?
- 答:思路:利用Start Drag语句让一个MC随鼠标运动,再利用该MC的x、y坐标等属性产生相应的变化
- 相关文章或源文件: www.flashempire.com/tutorial/tutor/t5.html 作者:边城浪子 www.flashempire.com/tutorial/tutor/t9.html 作者:Jimbob 202.106.124.57/~eastecho/fbbs/Forum7/HTML/00002 9.html
- 79。问:如何使用FScommand制作时钟?
- 答:在天极网有相关教程 netschool.cpcw.com/homepage/tool/flas h4/advanced/advanced18.htm 作者:newfish
- 80。问:如何进行碰撞检测?
- 答:思路:1、用get property检测运动MC的位置;
- 2、对于一些和鼠标跟随有关的碰撞检测,可以用_droptarget
- 相关文章或源文件: www.flashempire.com/tutorial/tutor/t19.html 作者:FlashGun 202.106.124.57/~eastecho/fbbs/Forum2/HTML/00021 5.html
- 81。问:返回值中或者需load进入动画的文本文件中如何表示空格和其他特殊字符?
- 答:用"+"代替空格 “name= 小东瓜”写为:“name=+小东瓜”
- 在异景空间(http://iching.topcool.net/)有相对应特殊字符的转换表。
- 82。问:如何调用一个.exe的可执行文件,比如:我用vc编好的可执行文件。
- 答:用fscommand("exec","执行文件名")便可。需注意此时执行文件的路径是否正确。
- 83。问:如何禁止菜单、Zoom In(Out)功能,如何完成双击SWF文件时直接全屏
- 答:在第一桢中输入下面命令:
- 全屏->FS Command ("fullscreen", true)
- 禁止缩放->FS Command ("allowscale", False)
- 禁止菜单->FS Command ("showmenu", False)
- 84。问:怎样在音乐完成后执行一个动作?
- 答:http://202.106.124.57/~eastecho/fbbs/Forum2/HTML/000382.html
- 85。问:如何载入外部动画(*.swf),如何控制载入动画的位置?
- 答:相关文章或源文件: 202.106.124.57/~eastecho/fbbs/Forum7/HTML/00000 9.html 202.106.124.57/~eastecho/fbbs/Forum2/HTML/00057 2.html 202.106.124.57/~eastecho/fbbs/Forum2/HTML/00015 9.html
- 86。问:如何在网页中判断是否已安装插件?
- 答:http://202.106.124.57/~eastecho/fbbs/Forum2/HTML/000753.html有详说明。
- 87。问:flash4是怎么样制作聊天室?
- 答:需要cgi的支持。比如:asp、perl、php等。国内专门介绍CGI与FLASH联合编程的站点较少,你可以去国外的一些站点看看。
- 88。问:如何制作留言板?
- 答:分成上、下两篇。用Asp+Flash实现。
- www.flashempire.com/tutorial/tutor/t15.html 作者:边城浪子 www.flashempire.com/tutorial/tutor/t16.html 作者:边城浪子
- 89。问:如何做计数器?
- 答:主要是用cgi程序(asp,perl,php等)将数值写入文本文件中,然后利用FLASH的读文本文件的功能将数字读出来并显示。
- 90。问:如何制做烟花效果?
- 答:http://202.106.124.57/~eastecho/fbbs/Forum2/HTML/000590.html 作者:boat
- 91。问:如何动态改变颜色?
- 答:思路如下:
- 1、做好不同颜色的帧或MC调用;
- 2、使用RGB或者CMYK或者其他的色彩模式来进行改变,利用一个具有不同TINT属性的符号并且动态改变ALPHA属性进行叠加。
- 相关文章或源文件如下: 202.106.124.57/~eastecho/fbbs/Forum2/HTML/00014 2.html 203.39.170.10/http/movies/zips/colour.zip 作者:Richard James Rose 203.39.170.10/http/movies/zips/cmyk.zip 作者:Martyn van Beek
- 92。问:如何制作Loading?
- 答:使用_framesloaded、_totalframes两个变量可以完成
- 相关文章或源文件: www.flashempire.com/tutorial/tutor/t4.html 作者:边城浪子 www.flashempire.com/tutorial/tutor/t10.html 作者:小东瓜
- 93。问:如何判断载入外部swf的进度?
- 答:可以使用被载入swf的_framesloaded、_totalframes两个变量,加上被载入动画的名字。
- 相关文章或源文件: 202.106.124.57/~eastecho/fbbs/Forum2/HTML/00051 6.html
- 94。问:如何把FLASH中的输入的文本存到另一个文本文件!
- 答:FLASH自己不行!需要与其他软件联合编程来完成。比如:ASP,PERL。
- 95。问:经常听到别人说到路径,到底FLASH中的路径起到一个什么作用?
- 答:如果你用过DOS,您就可以很容易理解FLASH的路径。简单地说,路径就是在FLASH编程时能够找到变量或者符号(symbol)所经过的路。其方式跟D OS一样,分成相对的和绝对的两种。
- 可以看一看下面两个地址中介绍的内容: 202.106.124.57/~eastecho/fbbs/Forum7/HTML/00000 9.html 202.106.124.57/~eastecho/fbbs/Forum2/HTML/00052 5.html
- 96。问:flash编程用什么工具软件较好
- 答:用ActionClip1.4,你先在任何一个文本编辑软件中写完程序之后,将程序部分COPY至剪贴板,然后运行ActionClip将之转化,然后到f lash中将之PASTE便可。这个工具很小巧,在闪光地带(http:/zippy.yeah.net)有一个更好一点的工具Flash ActionScript Tool Beta2 注册版下载,支持所有的FLASHW命令,可生成一些简单的程序。
- 97。问:将.fla文件转成.avi文件文件的方法
- 答:可以转成mov格式,没办法直接转成avi,可以通过转成gif序列,再经过其它软件转成avi(比如premiere)
- 98。问: 如何在本机上测试LOADING?
- 答: 在播放(Test Movie)时,再次按Ctrl+Enter,或者是选择菜单View>Show Streaming
- 还可以打开Bandwidth Profiler
- 99。问: Flash5中,怎样才能消除导入图像的锯齿?
- 答: 请用BMP图象或矢量图。由于点阵问题,所以你在导入图象之前先看看这个图的像素有多大,然后将它转为BMP格式后,再到FLASH中用"modify-->trace bitmap"命令优化图象!
- 100。问: 请问如何在每次刷新页面时随机显示几个 SWF 中的某一个动画?
- 答: LoadmovieNum("movie"+random(5)+".swf")
- 假设有6个swf,分别命名为
- movie0.swf,movie1.swf,……movie5.swf
- 像上边那样,每刷新一次,出现的界面就可能不一样。
- 101。问: 如何屏蔽按钮BUTTON的手型,我只要箭头! 答: 可以使用mouse.hide();,然后再用startDrag命令让一个箭头形的MC被拖动就可以了。
- 102. 问:如何让一个MC调用另一个MC里设置的一个变量?
- 在mc里输入此语句:(a b 均为变量名,mcname为mc的实体名)
- a = _root.mcname.b;
- 此语句是使本mc的变量a调用_root.mcname这个mc里的变量b
- 103.问: 在Flash中如何打开Word文档?
- Flash不支持调用Word文件,但浏览器可以直接打开.doc文档,那么就用getURL来解决即可,路径用绝对地址http://www..../word.doc 。
- 104. 问:在Flash中如何调用mpeg文件?
- Flash中不支持调用mpeg文件,首先要安装一个三方软件,名字为Swiffcanvas1.0;接着打开fla文件,如果mpeg文件的目录为aa,mpeg文件名字为bb,那么就可以就添加下面的语句:
- FS Command ("exec", "SwiffEXEC(LOCAL:aaa111.mpeg) ");
- 然后把fla文件输出为exe文件 ,并用Swiffcanvas打开这个exe文件,然后在Swiffcanvas里设置完成自己的要求。最后再输出为.exe文件,就可以了。
- 105。问: 在ActionScript的编辑窗口中怎么输入中文?
- 可以更换Flash的字体,也就是删除WindowsFontsModern.fon,这样,编辑窗口的字体就好看多了。
- 105.问: Flash如何与数据库连接?
- 答:只能通过后台文件,如CGI脚本,Active Server Pages (ASP),或 Personal Home Page (PHP)等。传递值到flash中,实现数据库的操作。
- 106. 问:在用FsCommand中可以调用javascript吗?
- 答:FsCommand可以调用JS函数MovieName_DofsCommand装入Flash动画。MovieName是Flash动画的名字由Embed标签的Name属性或是Object标签的ID属性指定,如果FlashPlayer的名字为MYMOVIE,应该调用JS函数名字为MYMOVIE_DOFSCOMMAND。
- 107。问:如何学习Flash(阿文)
- bbs.flash8.net:8000/cgi-bin/topic_show.cgi?id=14205&h=1&bpg=1&age=-1
- 108。问:如何实现FLASH背景颜色的随机变换 (erik168)
- bbs.flash8.net:8000/cgi-bin/topic_show.cgi?id=16519&h=1&bpg=1&age=-1
- 109:问:Flash 5.0 Actions 一览! (djsgh)
- 答:http://bbs.flash8.net:8000/cgi-bin/topic_show.cgi?id=7607&h=1&bpg=1&age=-1
- 110。问:如何制作动作连贯的小黑人(拾荒)
- 答:http://bbs.flash8.net:8000/cgi-bin/topic_show.cgi?id=35539&h=1&bpg=1&age=-1
- 111。问:初学者如何人打好ACTION基础(小晶)
- 答:http://bbs.flash8.net:8000/cgi-bin/topic_show.cgi?id=15164&h=1&bpg=1&age=-1
- 112。问:如何实现画中画效果(木桫椤)
- 答:http://bbs.flash8.net:8000/cgi-bin/topic_show.cgi?id=7552&h=1&bpg=1&age=-1
- 113。问:FLASH如何与后台连接?[源码]
- 答:使用LoadVars()对象的sendAndLoad()方法来发送和接收数据
- 114。问:如何实现声音的暂停/播放效果?
- 答:在执行stop()命令时可以用sound对象的position属性取得当前声音文件的播放时间(毫秒),然后用start(time,loop)在当前位置播放即可。
- 115。问:如何定义二维数组?
- 答:下面定义一个20*20的二维数组,值全部为0
- sarray = [];
- for (var i = 0; i<=19; i++)
- sarray[ i] = [];
- for (var j = 0; j<=19; j++) {
- sarray[ i][j] = 0;
- {}
- }
- 116。问:如何打开指定属性的窗口?[源码][/color]
- 答:先JS在HTML页面中定义函数,然后在FLASH中用getURL()调用
- (turbine)
- 117。问:如何通过MC中的按钮跳转场景?
- 答:在要跳转的桢上加标签,通过标签跳转:gotoAndStop("yourlable")
- (turbine)
- 118。问:如何随机设置MC颜色?
- 答:MC实例名为"mc"
- mycolor=new Color("mc")
- mycolor.setRGB(random(0xffffff))
- (turbine)
- 119。问:如何实现双击效果?
- 答:把下面的代码放到按钮上:
- on (press)
- time = getTimer()-down_time;
- if (time<300) {
- trace("ok");
- {}
- down_time = getTimer();
- }
- (turbine)
- 120。问:如何使MC始终跟随鼠标旋转?[源码][/color]
- 答:先计算MC横纵坐标与鼠标横纵坐标的差值,然后用Math.atan2()来计算旋转角度。
- m_x = _root._xmouse-mc._x;
- m_y = _root._ymouse-mc._y;
- mc._rotation = PI=180/Math.PI*Math.atan2(m_y, m_x);
- (turbine)
- 121。问:如何做鼠标跟随效果?
- 答:基础代码如下,a为步长
- mc._x+=(_root._xmouse-mc._x)/a
- mc._y+=(_root._ymouse-mc._y)/a
- (turbine)
- 122。问:如何在AS中创建类的继承?
- 答:创建一个MC的继承类
- myClass=function()
- ……
- {}
- myClass.prototype = new MovieClip();
- (turbine)
- 122.问:能否详细讲解loadmovie
- 答:loadmovie的问题,然后就是加载之后属性的设置。。
- loadMovieNum(url,level,method);
- url 就是你要加载的SWF文件的相对或绝对URL. 如"snow.swf"或"http://go8.163.com/6snow9/myflash/snow.swf",强烈建议把要加载的swf都放在同一目录下
- level指定被加载的swf放入到哪个层级(level)里,范围为0---n吧具体多少,我也
- Flash常用代码集锦 [2005-9-2]
- 1、用flash 做那种弹出的小窗口
- 分两步:
- 给flash中的按钮加入如下action:
- on (release) {
- getURL ("javascript:MM_openBrWindow('newweb.htm','','width=600,height=100')");
- }
- 在HTML页面的...之间加入下面的javascript代码.
- 2、如何使得flash一打开就是全屏?
- fscommand("fullscreen",true)
- 如何不能使用右键?
- fscommand ("showmenu", "false");
- 3、用命令载入一个动画,我需要确定载入动画在画面中的位置,用什么语言来设置?
- 例如载入名为dd.swf的动画,我要确定这个动画的中心位置在(205,250),该怎么设置?
- 在要加载动画的那钟加入
- loadMovie("dd.swf", "a");
- a._x=205;
- a._y=250;
- 你得先做一个空的MC起名叫"a",导入时,在右下角也起名为a
- 4、当鼠标经过时动画播放到某处
- on (rollover) {
- gotoAndPlay(10);
- }
- 当鼠标按下时动画播放到某处
- on (release) {
- gotoAndPlay(1);
- }
- 5、播完动画后自动跳到某网页
- getURL("siteindex.htm", _self);
- 6、设为首页
- on (release) {
- getURL("javascript:void(document.links.style.behavior='url(#default#homepage)');void document.links.setHomePage ('http://www.flash8.net/')", "_self", "POST");
- }
- 注意要将网页中的flash的ID号命名为"links"
- 加入收藏夹
- on (release) {
- getURL("javascript:void window.external.AddFavorite('http://www.163.com','网页');", "_self", "POST");
- }
- 7、关于随机数的技巧
- 用来产生6--20之间的5个不重复的随机数:
- 1):首先产生一个随机数,放在数组对象中的第一个位置;
- 2):产生一个新的随机数.
- 3):检查新产生的随机数和所有目前已产生的随机数是否相同,若是相同则返回(2),否则返回(4)
- 4):将新的随机数加入数组对象中下一个数组元素内.
- 5):检查数组对象个数是否已达到5个,若是跳到(6),否则返回(2)
- 6):结束.
- AS如下:
- data1=newArray(5);
- tot=1;
- data1=[tot-1]=random(20-6+1)+6;
- do{
- gen_data=random(20-6+1)+6;
- reapeat_data=0;
- for(i=0,i<=tot-1;i++){
- if(gen_data==data
- reapeat_data=1;
- break;
- }
- }
- if(reapeat_data==0){
- tot++
- data[tot-1]=reapeat_data;
- }
- }while(tot<5);
- trace(data1);
- 8 、如何使得flash一打开就是全屏的
- 这里说的方法只是用于flash Player (fp)
- 9 、如何禁止右键菜单
- fscommand的方法还是只能适用于fp,在网页中使用还是必须添加额外的参数
- 或者用最简单的一句as,在fp和网页中均适用:
- Stage.showMenu=false;
- 10、载入动画的问题
- loadMovie("dd.swf", a); //这里没有引号~
- 11、播完动画后自动跳到某网页
- getURL("siteindex.htm", "_self"); //这里有引号滴~?
- +我想场景一循环播放几次和转入第二场景播放。不知道如何写AS
- 在倒数第二桢放代码:
- if(i>n){
- gotoAndPlay("1","sence2");
- }
- else{
- i += 1;
- }
- 最后一桢放gotoAndPlay(_prevFrame);
- +Flash选择题模板
- 之所以叫选择题模板,是因为调用了外部文本文件,任何人只要在文本文件中增减修改题目,就可以在swf文件中直接调用了,破刀不会XML,所以只好用记事本,不过这可能更方便,不懂flash的人也照样可以用了
- 用了好多文本框(当然也可以用多行文本框组件,用组件感觉不美观,但有滚动条,适合文字比较多的选择题),分别命名实例名为:题号、题目、选项A、选项B、选项C、选项D、题目总数、每题得分、你选择了、正确答案。
- 然后还有很多很多的按钮,首先是四个单选按钮组件,实例名分别为:按钮1、按钮2、按钮3、按钮4,还添加了一些按钮,实例名分别为:开始按钮、下一题按钮、上一题按钮、提交按钮、关闭按钮、正确答案按钮。
- 呵呵,实例名用的都是汉字,甚至一部分变量也是这样用的。没办法,破刀不认识洋文,这么多名字又担心乱了,所以只要用中国字了
- 只要把上述文本框和按钮放在适当位置,设置好了实例名,然后就在脚本层写上如下脚本,就完成了flash的制作。这时候还没有全部完成,还需要编辑一个名为“选择题.txt”的文本文件(文本文件内容样式附在最后),编辑好之后保存在同一个目录下,这时候就大功告成了
- fscommand("fullscreen", true);
- var i:Number = 1;
- var dd:Number = 0;
- var fen:Number = 0;
- var 可见:Number = 0;
- var 格式1:String = "<font size='15' color='#0000FF'><b><p align='center'>";
- var 格式2:String = "</b></font>";
- var 格式3:String = "<font size='15' color='#0000FF'><b>";
- var 统计:Array = new Array();
- var 判断:Array = new Array();
- var my_lv:LoadVars = new LoadVars();
- //定义加载对象
- my_lv.load("选择题.txt");
- //载入数据
- my_lv.onLoad = function(success:Boolean) {
- //加载判断
- if (success) {
- 题目.text = "<font size='20' color='#0000FF'><b><p align='center'>数据加载已经完成<BR>请按开始按钮开始</b></font>";
- 题目总数.text = 格式1+my_lv.题目总数+格式2;
- 每题得分.text = 格式1+my_lv.每题得分+格式2;
- 开始按钮.enabled = true;
- 下一题按钮.enabled = false;
- 上一题按钮.enabled = false;
- 提交按钮.enabled = false;
- 按钮1.enabled = false;
- 按钮2.enabled = false;
- 按钮3.enabled = false;
- 按钮4.enabled = false;
- 正确答案按钮.enabled = false;
- } else {
- 题目.text = 格式1+"正在加载数据……"+格式2;
- 开始按钮.enabled = false;
- 下一题按钮.enabled = false;
- 上一题按钮.enabled = false;
- 提交按钮.enabled = false;
- 按钮1.enabled = false;
- 按钮2.enabled = false;
- 按钮3.enabled = false;
- 按钮4.enabled = false;
- 正确答案按钮.enabled = false;
- }
- };
- this.正确答案按钮.onPress = function() {
- 可见 = 1-可见;
- if (可见) {
- 正确答案.text = t;
- } else {
- 正确答案.text = "";
- }
- };
- this.按钮1.onPress = function() {
- 判断[i] = "A";
- 你选择了.text = 格式1+判断+格式2;
- };
- this.按钮2.onPress = function() {
- 判断[i] = "B";
- 你选择了.text = 格式1+判断+格式2;
- };
- this.按钮3.onPress = function() {
- 判断[i] = "C";
- 你选择了.text = 格式1+判断+格式2;
- };
- this.按钮4.onPress = function() {
- 判断[i] = "D";
- 你选择了.text = 格式1+判断+格式2;
- };
- 题目函数 = function (q) {
- 你选择了.text = "";
- 正确答案.text = "";
- 题目.text = 格式3+my_lv["a"+(q*10)]+格式2;
- 题号.text = 格式1+"第 "+i+" 题"+格式2;
- 选项A.text = 格式3+my_lv["a"+(q*10+1)]+格式2;
- 选项B.text = 格式3+my_lv["a"+(q*10+2)]+格式2;
- 选项C.text = 格式3+my_lv["a"+(q*10+3)]+格式2;
- 选项D.text = 格式3+my_lv["a"+(q*10+4)]+格式2;
- t = 格式1+my_lv["a"+(q*10+5)]+格式2;
- };
- 取消选择 = function () {
- 可见 = 0;
- 正确答案.text = "";
- 你选择了.text = "";
- 按钮1.selected = false;
- 按钮2.selected = false;
- 按钮3.selected = false;
- 按钮4.selected = false;
- };
- 开始按钮.onPress = function() {
- 总分.text = "";
- i = 1;
- 开始按钮.enabled = false;
- 下一题按钮.enabled = true;
- 上一题按钮.enabled = true;
- 提交按钮.enabled = true;
- 按钮1.enabled = true;
- 按钮2.enabled = true;
- 按钮3.enabled = true;
- 按钮4.enabled = true;
- 正确答案按钮.enabled = true;
- 题目函数(i);
- 取消选择();
- dd = i;
- };
- 下一题按钮.onPress = function() {
- 取消选择();
- if (判断[i] == my_lv["a"+(i*10+5)]) {
- 统计[i] = my_lv.每题得分;
- } else {
- 统计[i] = 0;
- }
- if (i<my_lv.题目总数) {
- i++;
- }
- 题目函数(i);
- dd = Math.max(dd, i);
- };
- 上一题按钮.onPress = function() {
- 取消选择();
- if (判断[i] == my_lv["a"+(i*10+5)]) {
- 统计[i] = my_lv.每题得分;
- } else {
- 统计[i] = 0;
- }
- if (i>1) {
- i--;
- }
- 题目函数(i);
- };
- 提交按钮.onPress = function() {
- 题目.text = "<font size='20' color='#0000FF'><b><p align='center'>本次答题过程已经完成<BR>请按开始按钮重新开始</b></font>";
- 选项A.text = "";
- 选项B.text = "";
- 选项C.text = "";
- 选项D.text = "";
- fen = 0;
- 取消选择();
- 开始按钮.enabled = true;
- 下一题按钮.enabled = false;
- 上一题按钮.enabled = false;
- 提交按钮.enabled = false;
- 按钮1.enabled = false;
- 按钮2.enabled = false;
- 按钮3.enabled = false;
- 按钮4.enabled = false;
- 正确答案按钮.enabled = false;
- if (判断[i] == my_lv["a"+(i*10+5)]) {
- 统计[i] = my_lv.每题得分;
- } else {
- 统计[i] = 0;
- }
- for (var i = 1; i<=dd; i++) {
- fen += Number(统计[i]);
- }
- 总分.text = 格式1+fen+格式2;
- 开始按钮.enabled = true;
- };
- 关闭按钮.onPress = function() {
- fscommand("quit", true);
- };
- 选择题.txt
- 题目总数=4&
- &每题得分=5&
- &a10=下列各项属于计算机硬件的是&
- &a11=机房管理员&
- &a12=windows操作系统&
- &a13=主板&
- &a14=声卡驱动程序&
- &a15=C&
- &a20=三角形内角和&
- &a21=90度&
- &a22=180度&
- &a23=60度&
- &a24=360度&
- &a25=B&
- &a30=五边形不相邻的外角和等于&
- &a31=180度&
- &a32=360度&
- &a33=720度&
- &a34=450度&
- &a35=B&
- &a40=最常用的动画制作软件是&
- &a41=flash&
- &a42=word&
- &a43=EXCEL&
- &a44=PPT&
- &a45=A&
- 以上文本文件中,每一行为一个变量,制作好swf文件之后,使用的时候可以根据自己需要增减修改这个文本文件
复制代码 |
评分
-
查看全部评分总评分 : 金钱 +30
|