核心提示:Flash读取外部数据是一个比较实用的技术,特别适用于是对于图片素材、文本素材经常更换的情况,下面就FLASH读取外部数据的办法,简单通俗的说一说。两个读取函数loadVariables() loadVariablesNum() 用 法 loadVariables (url , target [, ...
Flash读取外部数据是一个比较实用的技术,特别适用于是对于图片素材、文本素材经常更换的情况,下面就FLASH读取外部数据的办法,简单通俗的说一说。
两个读取函数
loadVariables() loadVariablesNum() 用 法 loadVariables ("url" , target [, variables]) loadVariablesNum ("url" ,level [, variables])
区别:
太理论的东西我就不讲了,大家都知道FLASH里有层级(level),也有影片剪辑(MC)那么: ·如果你想让FLASH读取到的数据放到某个影片剪辑中,那你就用第一个loadVariables ·如果你想让FLASH读取到的数据放到某个特定的级别,那你就用第二个loadVariablesNum
FLASH4就有的语法,这个函数的功能就是从外部文件(例如文本文件,或由 CGI 脚本、Active Server Page (ASP)、PHP 或 Perl 脚本生成的文本)中读取数据,并设置目标影片剪辑中变量的值。此动作还可用于使用新值更新活动 SWF 文件中的变量。
举例说明:
1、我们先准备一个 TXT记事本。在里面写以下内容: t_name=tommyLi&t_age=25岁&t_from=陕西 泾渭分明
解释:上面的文本内容我定义了3个变量 t_name t_age t_from 并且分别让给他们赋予了一个值。而且中间用了 & 分隔开了,不明白的朋友就会问了?用&分开是啥意思?那我就来告诉你,FLASH读取外部数据,当外部数据被程序载入的时候,FLASH会自动根据 & 来 分割数据 也就是说 上面文本里的东西如果被FLASH读取到,FLASH就自动认识它们是3个变量。
2、我们新建一个FLASH文件,在第一个桢写上: loadVariables("tommyLi.txt", "_root"); 或者(选一个就行,别2个都写哦) loadVariablesNum("tommyLi.txt", 0); 解释:用2种方法把tommyheng.txt载入到FLASH中。 第一种方法:把文本中的数据载入到FLASH的主场景中(_root 其实就是FLASH的主场景,当然,如果你想把数据放到FLASH中的某个MC中,你可以把它修改成,_root.mc意思就是载入到主场景中的一个叫做MC的影片剪辑) 第二种方法:把文本中的数据载入到FLASH的场景中的第0个级别
然后,在第5桢处插入一个关键空白桢,里面写
trace(t_name); trace(t_age); trace(t_from); stop(); 解释:trace()是FLASH里是一个信息输出函数,在制作FLASH的时候,开发者可以通过这个函数,把程序返回的结果(变量)直接输出来观察运行的是否正确等等,但是它只能在FLASH里使用(也就是说按CTRL+ENTER的时候)你才能看到它的功能。 把FLASH和tommyheng文本保存到同一个文件夹中。按CTRL+ENTER直接测试影片 你会发现会输出一下结果: tommyLI
25 陕西 泾渭分明
如果你想把这些结果显示到文本框中,而不是输出来看,那可以又2种方式: 第一种方式:直接分配方式
就是直接做3个动态文本框,分别点选每个文本框,在其属性中找到变量,并分别填写: t_name t_age t_from
第二中方式:自定分配方式
同样建立3个动态文本框,但是不同的是,分别点选每个文本框,在其实例名称处分别填写随便的3个名字 比如:a1 a2 a3 然后在这桢上写如下程序:
a1.text = t_name a2.text = t_age a3.text = t_from 这样FLASH就完成了读取外部数据的功能!!!
特别提示: 某些朋友根据我的文件进行测试或者学习,会出现一个问题,那就是英文和数字显示很正常,但是中文就显示不正常变正了乱码(这个是编码问题,很高难的哦)。不要怕,我们有办法对付它,在第一桢处写上 System.useCodepage=true; 这句话的意思就是让FLASH认识中文(嘿嘿),按照理论上讲就是让FLASH使用运行播放器的操作系统的传统代码页来解释外部文本文件。
|