这个例子是我偶然看到一个原文件而受到启发的。因为最近看到闪吧的很多朋友对两个方面都很有迷惑:load外部asp或者txt、以及文本的滚动(无组件)。这个例子正好包含了这两个方面,相信不明白的兄弟们一定会从这个例子里学会这两个方面的。
好,切入正题:(1)先解决load外部文本的问题:
因为Flash读取外部文本,不管是txt还是asp都是要一个特定的形式。假如你的Flash里有两个动态文本分别是mytitle和mycontent的话,你的txt和asp返回值也必须有一个mytitle=xxxxxx&mycontent=yyyyyy的形式,或者在Flash内部做一个判定转向也可以。这样Flash才能load所有的变量。
(2)解决文本滚动的问题:
我们可以Fuction scroll解决,比如:
function doscroll (num) {//function doscroll
with (mycontent) {//mycontent为要滚动的文本
scroll= num + scroll;//条件
}
}
这样就可以实现文本的滚动了。
现在我们就可以动手做了:先创建一个背景的MC,我们暂时称它为MC1。加两个动态文本,变量名分别为 mytitle和mycontent 其中要滚动的要选择为“多行”,否则就不能滚动了;假如想要它显示规定的HTML格式,还要把HTML的选项选上。定义两个动态文本为MC2,MC2是MC1的子MC。返回到MC2里,再做两个上下按钮的MC,假如叫MC3和MC4。他们都是MC2的子MC。最后分别在MC3和MC4里加入一个按钮。
为方便其从属关系我列了树型的表
——主场景
|
—MC1—背景
|
—MC2—两个动态文本mytitle、mycontent
|
—MC3、MC4—向上向下按钮的MC
|
—按钮
我们开始写AS了:
1帧 as: System.usecodepage=true;//定义码制,使得显示中文不乱码
MC1 as:onClipEvent (load) {//当MC Event 为load时
this.loadVariables("txtasp.txt");//读取同一目录下的文本txtasp.txt
}
onClipEvent (data) {//MC Event 为data 数据读完时
mytitle = title;//文本中变量和Flash中变量相等,也就是加了一个判定。
mycontent = content;
}
为了判定按钮按下时滚动的条件,我们可以在按钮上加上as:
on (press) {//按的时候定义btn为1
btn = 1;
}
on (release, dragOut) {//松开或滑出btn为0
btn = 0;
}
而且我们前面也定义了文本滚动的条件:
在MC2的第一帧上as:function doscroll (num) {//前面已经说过,这是定义文本滚动的
with (mycontent) {
scroll= num + scroll;
}
}
有了这个条件我们就可以定义下一步了
在MC3上要加AS如下(MC3为向上按钮)
onClipEvent (enterFrame) {//进入Frame
if (btn == 1) {//假如btn为1
_parent.doscroll(-1);//父级stroll - 1
}
}
相反的向下的MC4 AS
onClipEvent (enterFrame) {//进入Frame
if (btn == 1) {//假如btn为1
_parent.doscroll(1);//父级stroll1
}
}
到此为止这个读取加滚动的东东就做完了,我表达能力不好,大家假如看着心烦就直接看源文件吧
原创教程——From Flash8.net 原文件如下
点击浏览该文件