当前位置:首页>网络学院>网页制作>Flash教程>文章内容

Flash: 可添加二级树半功略

[ 来源:www.it55.com | 作者: | 时间:2007-07-12 | 收藏 | 推荐 ] 【

先看我做好的:
免费资源www.it55.com

新开窗口效果比较好
源文件
有个失误,减主菜单的时候名字忘了减了。
先讲讲我的思路,主要是利用几个变量:
menuNum ---主目录数
menuName_X ---第X个目录名
menu_X_childNum ---第X个目录的菜单数
menu_X_childName_Y ---第X个目录的第Y个菜单的名子
botton_X_Y_ulr ---第X个目录的第Y个菜单的连接地址
利用这几个变量循环出菜单。主要工作在层attmenu和attchild上。
edit层就是改变和储存这几个变量。
目前还在研究XML,想利用XML来储存这些数据。希望高手指点。
以下是FLA种的源程序加上我的注释,班门弄斧一下。
Layer:attmenu
    frame1:空,用于读取外部数据。
    frame2:

45398 www.it55.com it55学习IT知识,享受IT生活 4dfkjn

it55.com

for(i=1;i<menuNum+1;i++){            //取得主目录数目(menuNum),并循环复制按钮
attachMovie("unseeb","unseeb_"+i+"a",100+i) //复制不可见按钮用于主目录按钮的动作。
attachMovie("bover","menu_"+i,i); //复制动画按钮。
attachMovie("atext","atext"+i,200+i);//复制主目录上的按钮名称。
this["menu_"+i]._x=60+100*(i-1); //设置以上三个按钮载主场景的位置。
this["menu_"+i]._y=20;
this["unseeb_"+i+"a"]._x=60+100*(i-1);
this["unseeb_"+i+"a"]._y=20;
_root["atext"+i].name=eval("menuName_" + i);
_root["atext"+i]._x=30+100*(i-1);
_root["atext"+i]._y=12;
}

IT资讯之家 www.it55.com

Layer:attchild
    frame1-2:空,这两帧用于复制主目录
    frame3: www.it55.com在线教程


stop(); //停止影片
for(i=1;i<=menuNum;i++){  //以主目录数目做循环
childNum=eval("menu_" + i +"_childNum"); //分别获得每个主目录的菜单数目
for(j=1;j<childNum+1;j++){  //以该主目录的菜单数目做循环
attachMovie("botton","botton_"+i+"_"+j,j+(i+2)*100); //复制菜单按钮
attachMovie("atext","atext_"+i+"_"+j,j+(i+102)*100); //复制菜单名称
this["botton_"+i+"_"+j]._x=60+100*(i-1); //设置以上两种按钮的属性(位置、不可见)
this["botton_"+i+"_"+j]._y=20+j*23;
this["botton_"+i+"_"+j]._visible=false;
this["atext_"+i+"_"+j]._x=20+100*(i-1);
this["atext_"+i+"_"+j]._y=12+j*23;
this["atext_"+i+"_"+j]._visible=false;
this["atext_"+i+"_"+j].name=eval("menu_"+i+"_childName_"+j); //取得菜单名称并赋值给MC(atext)中的动态文本。
} //下一个子菜单
} //下一个主目录
Layer:getnum:用于读取外部变量并将其转化为数值型。

http://www.it55.com/

Layer:edit:用于编辑各个目录以及菜单
    MC:
    edit (左下角): www.it55.com


onClipEvent(enterFrame){     //监测不可见按钮是否在第2帧(是否处于激活状态)为可见
this._visible = false;
for (i=1;i<=_root.menuNum;i++){
if (_root["unseeb_"+i+"a"]._currentframe == 2){
this._visible = true;
}
}
}
edit内的按钮: it55.com

sflj www.it55.com kg^&fgd

on (release) {      
for (i=1; i<=_root.menuNum; i++) {
if (_root["unseeb_"+i+"a"]._currentframe == 2) {
_root.editNum = i;
}
}                                                               //监测哪一个按钮处于激活状态
_root.editbg._visible = true;  //激活编辑界面
for(j=1;j<=eval("_root.menu_"+_root.editNum+"_childNum");j++){ //告诉编辑界面该目录的子菜单数目
eval("_root.editbg.intext_"+j)._visible=true; //告诉editbg循环出相应数目的input框
eval("_root.editbg.intext_"+j+"_url")._visible=true;
}
for(k=eval("_root.menu_"+_root.editNum+"_childNum")+1;k<=20;k++){

(阅读次数:

返回顶部
共2页: 上一页 1 [2] 下一页  

网友评论

[以下评论为网友观点,不代表本站。请自觉遵守互联网相关政策法规,所有连带责任均有评论者自负。]
[不超过250字]

最新文章