• 【设为首页】
  • 【收藏闪客居】
当前位置:主页>FLASH组件>文章内容
  • FlashMX2004组件教程-tree组件(1)
  • 来源:闪客帝国 作者:溶剂 2006-06-22 【

    flash2004的发布给flash爱好者带来了新的惊喜。其中编程功能得到了巨大的扩展,使得热衷于flash编程的爱好者看到了新的曙光(flash2004不仅是动画制作的软件,更成为后台制作的软件)。而且其中的组件制作的相当精美,有效的利用这些组件可以在短时间内作出不凡的效果。
要想理解tree组件中编程的代码,还需要两个的关键的东东必须要懂一些:

1.组件事件侦听器

你可以看看帮助,在这里我可以举个简单的例子:
拖入一个TextArea组件,命名为mytxt,并将下列代码置于第一帧中:

代码:

listenerObject = {};
listenerObject.change = function(溶剂) {
var h = 溶剂.target.text;
trace("你输入的文本是:"+newline+h);
};
mytxt.addEventListener("change", listenerObject);

2.xml的有关知识

要知道xml的结构形式,什么是节点等等~~~~(反正我也不熟,所以在这里就不说什么了。如果你想了解的话,请看相关的内容。帮助里有一些~~~)

废话少说,下面来看看其中的tree组件的用法。
效果图:

首先,打开flash2004,从组件窗口拖一个tree到舞台,然后建立一个动态文本。如图:

分别在属性面板中设置名字。如图:

一切准备就绪,接下来就要写入代码了。在时间轴的第一帧写入:

代码:

//建立组件添加监听
l_Object = new Object();
l_Object.change = function(myObject) {
  var urlname = myObject.target.selectedItem.attributes.label;//得到组件中的label标签的数据
  var url = myObject.target.selectedItem.attributes.data;//得到组件中的data标签的数据
  mymsg.text = "欢迎你到——------"+urlname+"-----";
  getURL(url,_blank)
};
//给tree组件添加监听
myTree.addEventListener("change", l_Object);
//下面用循环的方法建立xml的节点 
var myTreeXML = new XML();//新建一个xml对象
var myweb = ["闪式天下", "闪吧", "闪客天地", "闪客帝国"];
var myurl = ["http://www.mcmx.com", "http://www.flashempire.com", 
"http://www.flash8.net", "http://www.flashsky.com"];
for (var i = myweb.length-1; i>=0; i--) {
  myTreeXML.addTreeNode(myweb[i], myurl[i]);
}//建立了4个节点,其中label标签的值为myweb[i],data标签的值为myurl[i]
var myTreeNode = new Array();
for (var i = myweb.length-1; i>=0; i--) {
  myTreeNode[i] = myTreeXML.childNodes[i];
}//获得myTreeXML的节点,用数组的形式返回
//下面就闪式天下为主,介绍tree组件的数据添加。
//根据论坛的结构而定
var mcbbs = ["涂鸦旧墙", "歌音起点", "互动教程", "闪式搜猪", "闪式论坛"];
var mcbbsurl = ["http://www.mcmx.com/poopainter/poo/index.asp", 
"", "http://www.mcmx.com/Board/BoardMM.asp?BoardID=888",
 "http://www.mcmx.com/flashsearch/flashsearch.asp", "http://www.mcmx.com/Boards.asp"];
var mcBS = ["闪式娱乐设施", "闪式技术专栏", "闪式天下专区"];//闪式论坛中的子目录
var mcBSurl = ["http://www.mcmx.com/Boards.asp?Assort=1", "http://www.mcmx.com/Boards.asp?Assort=2",
"http://www.mcmx.com/Boards.asp?Assort=3"];
for (var i = mcbbs.length-1; i>=0; i--) {
  myTN = myTreeNode[3].addTreeNode(mcbbs[i], mcbbsurl[i]);
  if (i == mcbbs.length-1) {
    for (var n = mcBS.length-1; n>=0; n--) {
      myTN.addTreeNode(mcBS[n], mcBSurl[n]);//给闪式论坛添加子目录
     //闪式天下的数据添加结束
    }
  }
}
//下面的是随便加的
var empirebbs = ["solventsky", "solventsky", "solventsky", "solventsky", "solventsky"];
var empireurl = ["http://www.ayyz.net/grzy/sbg/access/index.asp"];
for (var i = empirebbs.length-1; i>=0; i--) {
  myTreeNode[2].addTreeNode(empirebbs[i], empireurl);
}
var f8bbs = ["solventsky", "solventsky", "solventsky", "solventsky", "solventsky"];
var f8bbsurl = ["http://www.ayyz.net/grzy/sbg/access/index.asp"];
for (var i = f8bbs.length-1; i>=0; i--) {
  myTreeNode[1].addTreeNode(f8bbs[i], f8bbsurl);
}
var skybbs = ["solventsky", "solventsky", "solventsky", "solventsky", "solventsky"];
var skybbsurl = ["http://www.ayyz.net/grzy/sbg/access/index.asp"];
for (var i = skybbs.length-1; i>=0; i--) {
  myTreeNode[0].addTreeNode(skybbs[i], skybbsurl);
}
//为组件myTree添加数据源 
myTree.dataProvider = myTreeXML;
//ok!

把上面的完成,你就可以测试了~~~~,怎样,不错吧………哈哈~~,就这样结束吧。

效果预览:

 
总结一下
1.学会组件事件侦听器的添加。
2.知道如何向tree组件中添加数据。





上一篇:MX2004组件(四) :Data Components   下一篇:FlashMX2004组件教程-tree组件(2)
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)

Copyright © 2006-2008 flashas.net All Rights Reserved.
网站内容咨询: admin#flashas.net (#为@) 联系QQ:40777822 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)