这两天一直待在宿舍帮导师准备精品课程的申报网站,比较简单的一个html + Flash的站。期间碰到一些问题,用Flash MX制作课程网站时,一般生成的文件都是一个整体文件,制成的课件没有Flash源文件时不能被再编辑,不便于再利用。Google了一下,找到了一些在Flash中调用外部文件的方法,包括:外部文本文件、外部程序文件、外部Flash文件、外部图片文件、外部音乐文件和外部脚本文件等。总结一下,留着以后用。. p- z9 x6 u( C' ^) d
2 ~4 F; [) E( t8 H& H
顺便推荐一个站,Flash8的新特性浏览器,比较直观
6 B$ p9 ?8 l* Y6 `# q
* w& J4 L- V/ Y0 n; r7 d6 \Flash MX中,外部文件的调用可以通过帧、按钮和影片剪辑响应来调出。在制作课件的时候,为了增强课件的交互性,通常使用按钮响应来调出。
1 I" P0 W% q# z2 M8 _
, Y+ d0 c9 Q6 g B一:调用外部文本文件# j' s# m3 |6 T
1、文本类型为“动态文本”、字体、大小、颜色、变量名为了方便起见,统一命名,以便在后面的脚本程序中调用。. ?/ ~ ^" s1 b) w# ] u
2、在按钮对象中添加脚本:
' P5 u; j: A0 A3 W6 \on (release) {
; K% h: O- D6 _" c loadVariablesNum("xxx.txt", 0); //调用文件名为“xxx.txt”的外部文本文件,级别为0级
" C# S. L. A, U9 N& ?$ F* \- j System.useCodepage = true; //显示中文字符的语句,使外部文本文件中的中文字符能正常显示。否则只能显示英文字符,中文字符为乱码/ h8 M% I6 U* q* [- ^
}
& r' X5 ?7 Z9 Q( t注意:
+ ^. D, k# P- t4 V! e- I1、外部文本文件必须和主文件在同一目录下。' m# P, e2 x' E% g7 ?. h, r
2、外部文本文件名必须为“xxx.txt”。
; h. {' A5 v# l' J3 k; Y4 n& [5 \. p3、外部文本文件第一行开头必须为“xxx=”形式。
0 {0 A4 ^% u/ [缺点:即使用8.0发布,动态文本的效果也不好。
- k8 c! {1 u) o$ O4 Y $ j* ?8 Z) L2 g }8 X& ~0 L+ {/ `
二:调用外部程序文件; z8 m- U+ T0 Q: K( w& t2 x% e
在按钮对象中添加脚本:" W; c. `% W: J1 E7 k! e+ J
on (release) {. l- F- I5 C6 s' Z# B7 c
fscommand("exec", "xxx.exe"); //调用文件名为“xxx.exe”的外部程序文件.& ~5 o# e* u* t- J
}
" h" k5 b4 E" f5 _, K0 U' G) f2 l注意:
8 m9 ^( o" f, g6 q1、外部程序文件必须和主文件在同一目录下。
. t3 _' y3 m0 z' T Z+ G& V7 B2、外部程序文件名必须为“xxx.exe”。+ \- F) g5 a6 H" g
3、如果要调用较大的程序文件,可以把主文件复制到程序文件的目录下,或者改变脚本设置,相对路径改为绝对路径。(不推荐)如:要调用Windows中的计算器程序,可设置脚本为:4 d- n# [% R: D" b7 d+ r
on (release) {
8 |2 S4 `' y2 [# G2 C- [ fscommand("exec", "C:\\Windows\\calc.exe");
% b) L3 Y( `( K m3 K$ ]}
# W, T' B6 _2 d
5 Z* R3 ~5 \) H三:调用Flash影片: w1 _. K2 h0 M( n% z
1、新建元件,名称为“空”,作用为“影片剪辑”。
2 E# O0 I" X! h) S2、拖动“空”影片剪辑元件到舞台上,创建一个实例。打开“属性”面板,设置实例名为“blank”4 M0 e3 h( t( g% h1 t" G+ @6 m% l
3、用鼠标右键单击舞台上的按钮三,从弹出的快捷菜单中选择“动作”选项,打开动作脚本编辑面板,键入以下脚本: r/ ^4 v0 u2 z$ g
on (release) {& l8 B1 l8 ~7 V2 d$ V6 e
loadMovie("xxx.swf", "blank");
' `* @3 T$ c9 a}' d" f* Q- |& E( P7 ^7 U
第二行:表示调用文件名为“xxx.swf”的外部Flash影片文件,用来代替主文件中的名为“blank”的影片剪辑。我们可以通过控制影片剪辑“blank”的属性来控制外部文件名为“xxx.swf”Flash影片文件的属性。) n, n, \7 L& [3 P
! X# ~. q( w; A四:调用外部图片文件的方法与调用Flash影片的方法大致相同,不写了
& v5 h7 C' X& E# N/ u+ m0 {4 \1 S
; {4 c/ F* Y/ ]2 `五:调用外部音乐文件
/ W5 p" x; t' l" b, W3 g0 a脚本:* w3 ?, u* m9 J
on (release) {
3 ]9 y- C9 g+ a7 |' p% A3 ]# z music = new Sound();
0 `7 s1 C) ~; R& t8 y1 @8 ]) i' F$ Y music.loadSound("xxx.mp3",true);
: e. m7 k5 e1 \% x! s: f}
- \. a8 l" j: j. Y第二行:新建一个声音文件,实例名为“music”。同样,我们可以设置“music”的属性(如音量、平衡、混响等)来控制外部音乐文件“xxx.mp3”的属性。* C( I: y: o6 Z% k
第三行:从外部调用一个文件名为“xxx.mp3”的音乐文件,“true”表示从网上下载时音乐文件时只存在于内存中而不下载到硬盘(在线播放)。
( ~$ T" q- f, \& j' u) f + U6 h0 a2 |' i. G7 |
六:调用外部脚本文件
9 a7 M$ g4 f" }9 H+ S一、操作方法:* e: d+ u- C& G: l
脚本:
" u1 L, l4 O/ Q7 F0 @0 t#include "chem.as"
B$ G$ v/ r6 n% @ b, N6 m其中chem.as的内容可以这样编辑: ( M+ N A% G ^
chm­_array=[]; $ K9 H8 p: ~3 O& R& H2 N" N
chem_array[0]=["aaa","bbb"]; . c: b* M6 v$ s. M2 i/ A
chem_array[1]=["ccc","ddd"];
+ o, f, v- ]5 ~) s5 z7 r7 Nchem_array[2]=["eee","fff"]; & N' M' ]8 ]1 d4 Y) E# q. L& m1 K3 ~
这样可以方便准确的调用数组中的任一个元素,如chem_array[0][1]就调用了"bbb"。并且你可以随时给这个数组添加新元素而不用改动Flash源文件。 |