导航:业界 | 认证 | 工具 | 图形 | 技术 | 系统 | 网络 | 办公 | 网页 | 文摘 | 动画
您当前的位置:diva8.com -> I T -> 网页 -> Flash -> I T内容
栏目导航
· Firework · FrontPage
· Flash · DreamWeaver
· 经验技巧 · LiveMotion
· HTML/CSS · Golive
热门I T
· [组图] 音频后期处理Adobe ...
· [组图] Photoshop--照片处理...
· [组图] 廉颇老矣?IE7.0 Bet...
· [图文] DuDu下载加速器推出...
· [组图] 清晰还原!Photoshop...
· [组图] 用photoshop给图片祛...
· [组图] DuDu 下载加速器试用...
· [组图] 新春特别版:PPLIVE...
· [图文] 让查找更方便些 腾讯...
· [组图] 廉颇老矣?IE7.0 Bet...
相关I T
· [图文] 轻松将Word文档快速...
· [组图] 让Flash动画“闪”在...
· 在PowerPoint中插入...
· 避免Flash引发幻灯片...
· 在PPT中实现Flash播...
· [图文] Word文件轻松变成Fl...
· [图文] 把Word文件转换成Fl...
· PowerPoint插入Flas...
· PowerPoint中插入Fl...
· [图文] 摄人心魄的效果 让F...
Flash MX 2004新特性实例学习四
作者:硅谷动力  来源:硅谷动力  发布时间:2005-1-16 11:46:52  发布人:qichang

减小字体 增大字体


    实例五、News Reader

  一、涉及特性

  本实例主要涉及数据绑定和组件的编程。数据绑定是在Flash MX 2004中才有的新功能,据称不用编程,只需设置几个组件的属性,就可以实现与服务器端的数据交互功能,也算是一大突破了。另外,由于在实例中没有提供相应的xml文件,所有字段都要手工输入,所以本实例的制作过程显得有些繁琐,请在制作过程中仔细检查每一个字段。

  二、制作过程

  1、从组件面板中拖一个List组件到场景中,命名为“articles”,设置“multipleSelection”为false,“rowHight”为20。

  2、从组件面板中拖一个TextArea组件到场景中,命名为“title”,各种参数设置不变。

  3、从组件面板中拖一个Label组件到场景中,命名为“author”,设置“text”为空。

  4、从组件面板中拖两个TextArea组件到场景中,分别命名为“desc”和“link”,都设置“text”为空。

  5、从组件面板中拖一个XMLConnector组件到场景中,命名为“feed”,设置参数如下:“URL”为“http://www.macromedia.com/go/devnet_rss”,“direction”为receive。

  6、用文本工具在场景中输入几处文字,此时的效果如图1所示。

  7、选取“feed”组件,选取“Component Inspector”中的Schema面板,在results字段下面增加如下的子字段:field name为RDF,data type为object,storage type为complex。

  8、在RDF字段下面增加如下的子字段:A、field name为xmlns,data type为string,storage type为attribute;B、field name为dc,data type为string,storage type为attribute;C、field name为rdf,data type为string,storage type为attribute;D、fieldname为channel,data type为object,storage type为Complex;E、field name为item,data type为Array,storage type为array。

  9、在Channel字段下面增加如下的子字段:A、field name为about,data type为string,storage type为attribute;B、field name为title,data type为string,storage type为simple;C、field name为link,data type为string,storage type为simple;D、field name为description,data type为string,storage type为simple;E、field name为date,data type为string,storage type为simple;F、field name为language,data type为string,storage type为simple;G、field name为items,data type为object,storage type为complex。

  10、在Channel字段的items子字段下面增加子字段:field name为seq,data type为object,storage type为complex;在seq字段下面增加子字段:field name为li,data type为Array,storage type为array;在li字段下面增加子字段:field name为[n],data type为int,storage type为simple;在[n]字段下面增加子字段:field name为resource,data type为string,storage type为attribute。

  11、回到RDF字段下面,在item字段下面增加如下子字段:field name为[n],data type为object,storage type为complex;在[n]字段下面增加如下的子字段:A、field name为about,data type为string,storage type为attribute;B、field name为title,data type为string,storage type为simple;C、field name为link,data type为string,storage type为simple;D、field name为description,data type为string,storage type为simple;E、field name为creator,data type为string,storage type为simple;F、field name为subject,data type为string,storage type为simple;G、field name为date,data type为string,storage type为simple;H、field name为type,data type为string,storage type为simple。此时的Schema面板如图2所示。

  12、选取“feed”组件,选取“Component Inspector”中的Bindings面板,点击“Add Bindings”按钮,添加一个“results.RDF.item”字段,点击“Bound to”按钮,在弹出的对话框中选取“List”,设置“formatter”为“Rearrange Field”,设置“formatter option”为“label='< creator>: < title>'”。

  13、同样在“feed”的Bingdings面板,点击“Add Bindings”按钮,添加一个“results.RDF.item.[n].title”字段,点击“Bound to”按钮,在弹出的对话框中选取“Text Area< title>”,设置“Index of item”为articles : selected Index。

  14、点击“Add Bindings”按钮,添加一个“results.RDF.item.[n].link”字段,点击“Bound to”按钮,在弹出的对话框中选取“Text Area< link>”,设置“Index of item”为articles : selected Index。

  15、点击“Add Bindings”按钮,添加一个“results.RDF.item.[n].creator”字段,点击“Bound to”按钮,在弹出的对话框中选取“Text< author>”,设置“Index of item”为articles : selected Index。

  16、点击“Add Bindings”按钮,添加一个“results.RDF.item.[n].description”字段,点击“Bound to”按钮,在弹出的对话框中选取“Text Area< desc>”,设置“Index of item”为articles : selected Index。此时的Bindings面板如图3所示。

  17、在Time Line中增加一层,命名为Action,在此层的Action面板上增加下面的语句:   

  /* Copyright 2003 Macromedia, Inc. All rights reserved.

  The following is Sample Code and is subject to all restrictions

  on such code as contained in the End User License Agreement

  accompanying this product.

  */

  function bindingExecuted() {

  articles.selectedIndex = 0;

  articles.refreshDestinations();

  }

  articles.addEventListener("bindingExecuted", this);

  feed.trigger();

  上面这些语句是为articles组件增加侦听鼠标动作的语句,让feed开始通讯。

  三、实际用途

  本实例主要涉及的是数据绑定功能,用途相当广泛,主要用来与服务器端的数据交互。以前相对繁琐的编程实现,现在只要设定几个组件的属性即可实现相应的功能。注意本实例中只涉及在Flash端的实现,没有涉及在服务器端的实现。

  另外,7-11步可以通过导入一个xml文件来实现,但系统提供的帮助文件中没有相应的xml文件,只能手工输入,因此显得有点复杂。



[] [返回上一页] [打 印] [收 藏]
∷相关I T评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 在线人数:
diva8.com Copyright © 2001-2006 diva8.com All Rights Reserved .粤ICP备05014750号