这两天一直待在宿舍帮导师准备精品课程的申报网站,比较简单的一个html + Flash的站。期间碰到一些问题,用Flash MX制作课程网站时,一般生成的文件都是一个整体文件,制成的课件没有Flash源文件时不能被再编辑,不便于再利用。Google了一下,找到了一些在Flash中调用外部文件的方法,包括:外部文本文件、外部程序文件、外部Flash文件、外部图片文件、外部音乐文件和外部脚本文件等。总结一下,留着以后用。
; R9 W4 s" O1 b7 T# I/ x- ^! F( a6 z, d# b2 e- L0 j
顺便推荐一个站,Flash8的新特性浏览器,比较直观
6 f0 s* v% {/ z- g4 ?$ ?$ G5 f9 [; F! f4 K- A0 x6 g
Flash MX中,外部文件的调用可以通过帧、按钮和影片剪辑响应来调出。在制作课件的时候,为了增强课件的交互性,通常使用按钮响应来调出。/ r8 T% P7 b; e) z
4 n8 b8 y' A5 H一:调用外部文本文件
0 O2 L2 B( [' f4 c# C" r; z1、文本类型为“动态文本”、字体、大小、颜色、变量名为了方便起见,统一命名,以便在后面的脚本程序中调用。" f% _* a/ [% C1 k2 g8 L4 f2 Q" |
2、在按钮对象中添加脚本:- x7 ?: l0 P0 v
on (release) {
6 K' r! o: X$ f0 i loadVariablesNum("xxx.txt", 0); //调用文件名为“xxx.txt”的外部文本文件,级别为0级
% U# R: _% x" H2 S6 u; R System.useCodepage = true; //显示中文字符的语句,使外部文本文件中的中文字符能正常显示。否则只能显示英文字符,中文字符为乱码
$ ]" C0 j) t) P& j6 O' t}
9 {& \# ~, E) U# C. v注意:
/ H' P9 u/ P. i3 f3 `1、外部文本文件必须和主文件在同一目录下。
) W% D |1 b: O7 F2、外部文本文件名必须为“xxx.txt”。
; _9 @% V2 i `/ H7 O3、外部文本文件第一行开头必须为“xxx=”形式。+ w o6 u0 m9 `+ l) h
缺点:即使用8.0发布,动态文本的效果也不好。1 b" g# Z( V1 U. f9 X
/ S* X# h3 h8 M! g% h6 e3 w" g9 f* U
二:调用外部程序文件
e% A8 C+ e7 a在按钮对象中添加脚本:
! F& k1 f- V( ]) Con (release) {
8 F/ T- H" @- y) x! Y* }5 I2 h% W, ^ fscommand("exec", "xxx.exe"); //调用文件名为“xxx.exe”的外部程序文件.
/ l$ q8 R9 s' ~8 P}1 h8 }9 Y0 m. t5 F- {+ U9 E
注意:1 D+ x% l$ ]8 J2 r
1、外部程序文件必须和主文件在同一目录下。
4 C2 I. S! v9 c( J+ X" w2、外部程序文件名必须为“xxx.exe”。
+ v% y) S0 E) O. H6 S) X3、如果要调用较大的程序文件,可以把主文件复制到程序文件的目录下,或者改变脚本设置,相对路径改为绝对路径。(不推荐)如:要调用Windows中的计算器程序,可设置脚本为:: \! ~* v+ @6 o* _7 x
on (release) {
# [% @* [. R. L8 u0 Q8 P fscommand("exec", "C:\\Windows\\calc.exe");
, e) u& [7 o; |- ?} 2 N9 N( S: h: l Z8 B3 f# Y
4 _: U ? I! @% r8 v4 |三:调用Flash影片5 L" q% I" G, v8 B# n
1、新建元件,名称为“空”,作用为“影片剪辑”。
2 x8 ~9 x( g! {, l; x0 a9 T! j2、拖动“空”影片剪辑元件到舞台上,创建一个实例。打开“属性”面板,设置实例名为“blank”8 T" u% G3 t. U- E
3、用鼠标右键单击舞台上的按钮三,从弹出的快捷菜单中选择“动作”选项,打开动作脚本编辑面板,键入以下脚本:3 Y7 _% `% b1 t* S$ y8 i
on (release) {
- A1 J y3 p) _2 y; R1 W loadMovie("xxx.swf", "blank");
. C& U- u0 Q( X2 w8 Y6 Z}, t2 c' R7 n9 J$ e3 n d
第二行:表示调用文件名为“xxx.swf”的外部Flash影片文件,用来代替主文件中的名为“blank”的影片剪辑。我们可以通过控制影片剪辑“blank”的属性来控制外部文件名为“xxx.swf”Flash影片文件的属性。$ ~7 p$ q$ S2 j* x+ f
1 v+ U$ A* P+ V3 d6 S. s0 H+ |
四:调用外部图片文件的方法与调用Flash影片的方法大致相同,不写了2 S* Q. T" G* E* R8 j6 Q6 F! g
. ?7 n+ Y. g6 `
五:调用外部音乐文件
: m, i& ^" \; ~1 e& o脚本:
2 W* A' ~/ Q1 xon (release) {
5 Z( W. B3 t7 k/ q' A music = new Sound();
2 G" z$ N# b H+ F$ d8 y music.loadSound("xxx.mp3",true);
* L) j; X* X6 T2 _8 A. n( J% h# a7 `}" Z+ {* v4 p, E2 g9 b9 |1 u
第二行:新建一个声音文件,实例名为“music”。同样,我们可以设置“music”的属性(如音量、平衡、混响等)来控制外部音乐文件“xxx.mp3”的属性。
9 d! U6 X7 h/ A0 i5 g8 o第三行:从外部调用一个文件名为“xxx.mp3”的音乐文件,“true”表示从网上下载时音乐文件时只存在于内存中而不下载到硬盘(在线播放)。
- W3 u" J f3 `% g g: K2 Y( M4 [ O5 M4 y! C6 x
六:调用外部脚本文件
) P% F/ {, R' z- Q8 b8 w* I一、操作方法:& z) T3 G( E% d
脚本:
) h8 i; b; O1 @* @, K#include "chem.as"
8 D C" x; `( H& @其中chem.as的内容可以这样编辑: 1 b- G/ u0 L1 Z$ k
chm­_array=[]; : i& d3 Q# }- J( _
chem_array[0]=["aaa","bbb"];
9 c" M. P$ t1 v/ [" Gchem_array[1]=["ccc","ddd"];
- C* M: ^8 p6 O @0 Rchem_array[2]=["eee","fff"]; ^8 l' u- ]5 o7 }% L
这样可以方便准确的调用数组中的任一个元素,如chem_array[0][1]就调用了"bbb"。并且你可以随时给这个数组添加新元素而不用改动Flash源文件。 |