找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4544|回复: 0

[无墨] [转贴]Flash中调用外部文件的方法(BYAzure )

[复制链接]
发表于 2006-11-13 07:33:11 | 显示全部楼层 |阅读模式
这两天一直待在宿舍帮导师准备精品课程的申报网站,比较简单的一个html + Flash的站。期间碰到一些问题,用Flash MX制作课程网站时,一般生成的文件都是一个整体文件,制成的课件没有Flash源文件时不能被再编辑,不便于再利用。Google了一下,找到了一些在Flash中调用外部文件的方法,包括:外部文本文件、外部程序文件、外部Flash文件、外部图片文件、外部音乐文件和外部脚本文件等。总结一下,留着以后用。! P  Z* p1 h7 x! n. n' k, s

; c2 `. d+ L" l5 \顺便推荐一个站,Flash8的新特性浏览器,比较直观
2 X( O* d9 w! l6 x/ j) P2 V  F2 }3 I, O* @: K- i$ N+ \
Flash MX中,外部文件的调用可以通过帧、按钮和影片剪辑响应来调出。在制作课件的时候,为了增强课件的交互性,通常使用按钮响应来调出。
3 q3 L8 ?. o& E; A& T
- h& ^5 T; j  ~一:调用外部文本文件* }7 ]2 q4 R. C2 t* V3 c+ ]
1、文本类型为“动态文本”、字体、大小、颜色、变量名为了方便起见,统一命名,以便在后面的脚本程序中调用。
# V7 x/ X. B% e5 E1 T) ]2、在按钮对象中添加脚本:0 R, l. |3 g- {
on (release) {9 a+ O3 U+ s' a: D6 b
     loadVariablesNum("xxx.txt", 0);   //调用文件名为“xxx.txt”的外部文本文件,级别为0级
% m0 D( q( W( \* t     System.useCodepage = true;   //显示中文字符的语句,使外部文本文件中的中文字符能正常显示。否则只能显示英文字符,中文字符为乱码
# w. j. ?9 q' B. j+ v5 t8 \}: X* D" R: e3 i: N$ [7 R( x4 J
注意:
$ \; e" Q0 N2 M' ~" `. e) ]0 d- I1、外部文本文件必须和主文件在同一目录下。
1 ^! T6 r1 T+ S- j! _2、外部文本文件名必须为“xxx.txt”。
" j+ a1 f" R( `# j$ p- e3、外部文本文件第一行开头必须为“xxx=”形式。
2 @/ v6 s' u2 q/ Y$ p6 f' i缺点:即使用8.0发布,动态文本的效果也不好。
+ ]! P/ s0 W2 H# c$ l- M
- n2 t0 h: e9 e! r8 C二:调用外部程序文件
  W" D* D$ l! ]6 u在按钮对象中添加脚本:* D) h# P1 g$ h/ m
on (release) {
/ B+ q& D$ W9 c, b& J9 n- I) y    fscommand("exec", "xxx.exe");   //调用文件名为“xxx.exe”的外部程序文件.
9 |  u  T* g2 G& Z7 E" O}/ @/ e9 g. f' w4 D" s
注意:
7 [+ x! h* p0 u: U, _1 Z1、外部程序文件必须和主文件在同一目录下。* M0 z: N- {) R! E0 K
2、外部程序文件名必须为“xxx.exe”。9 p' F2 ^( y* `) q- L' s
3、如果要调用较大的程序文件,可以把主文件复制到程序文件的目录下,或者改变脚本设置,相对路径改为绝对路径。(不推荐)如:要调用Windows中的计算器程序,可设置脚本为:
9 r2 C2 O4 T2 s$ Yon (release) {; Q* k" t& Y' ~9 k! B$ |. `
     fscommand("exec", "C:\\Windows\\calc.exe");
( k3 D2 ?! x+ ~& a. b}
. k, r5 c: C* {  c) l( l/ ~
  `2 ]! Y' a' z# E4 e4 B: V% i三:调用Flash影片
* m2 h# L# W+ k! a: b1 y" ~# q, ~1 e" S) x1、新建元件,名称为“空”,作用为“影片剪辑”。( ~! f. h7 d, f, W4 R! z
2、拖动“空”影片剪辑元件到舞台上,创建一个实例。打开“属性”面板,设置实例名为“blank”
9 x8 i7 F+ J; m; k; @3、用鼠标右键单击舞台上的按钮三,从弹出的快捷菜单中选择“动作”选项,打开动作脚本编辑面板,键入以下脚本:
8 t: ~) J! b( h+ n* Eon (release) {; }  L' d" K; ?& t
     loadMovie("xxx.swf", "blank");
& x1 Y2 j6 N  X6 S. K}
  z+ J1 d& M/ a0 r) ^第二行:表示调用文件名为“xxx.swf”的外部Flash影片文件,用来代替主文件中的名为“blank”的影片剪辑。我们可以通过控制影片剪辑“blank”的属性来控制外部文件名为“xxx.swf”Flash影片文件的属性。, Z7 J* v6 {$ `" B9 X% O

. p* W, D  o# y1 X4 q四:调用外部图片文件的方法与调用Flash影片的方法大致相同,不写了
1 Y% c, W9 X% i7 }+ w! |$ U) o! j- p
3 @2 A8 G$ E0 s; Z6 t0 o4 w五:调用外部音乐文件
# m' v7 o6 Z  @, v, ]$ y脚本:" ~+ r2 i- b9 O# Y- y) H: u5 _
on (release) {( j- |- L% m( L/ U! [: u
     music = new Sound();4 z4 ^3 b& H9 w# j( J6 _- L6 f- e
     music.loadSound("xxx.mp3",true);
+ x1 _% @; J$ o' z# Q* X}9 M  b( [1 C2 Q0 I; N/ \  Z4 Z
第二行:新建一个声音文件,实例名为“music”。同样,我们可以设置“music”的属性(如音量、平衡、混响等)来控制外部音乐文件“xxx.mp3”的属性。) A! c& Z" `+ p7 L$ z& l5 Z
第三行:从外部调用一个文件名为“xxx.mp3”的音乐文件,“true”表示从网上下载时音乐文件时只存在于内存中而不下载到硬盘(在线播放)。, y9 m: j0 a9 U8 Q3 a
. l" w- U0 M2 j6 c5 |
六:调用外部脚本文件
* k5 @0 J( O7 R- B( i+ {一、操作方法:  J4 @7 Q0 d+ F  A4 Y
脚本:
2 [1 X' W! V$ j+ i' _6 e#include "chem.as"
" N3 L) m7 c6 q: M/ _其中chem.as的内容可以这样编辑: 1 A7 ?8 U  h2 |4 q6 W$ ]  ]
chm­_array=[]; - x% {& ]; I4 j, u6 L2 f
chem_array[0]=["aaa","bbb"]; 8 _6 }9 d: s5 s/ Y* Y4 |; `( ]
chem_array[1]=["ccc","ddd"];   F' A3 P+ U1 h% X: m
chem_array[2]=["eee","fff"];
1 O/ q9 C. b3 S4 ]这样可以方便准确的调用数组中的任一个元素,如chem_array[0][1]就调用了"bbb"。并且你可以随时给这个数组添加新元素而不用改动Flash源文件。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

客户端