web数据库:设计研究:Flash Web结构的数据显示层

  前面讲Flash Web背景层时候已经提到了数据显示层由于笔者基本不使用组件所以对笔者来说数据显示层主要是指TextField或者用MC简单包装TextField它们是网站WebSite信息主体部分般都是动态外部信息当然由于我用MC进行了包装它们也可以作为按钮使用比较常见就是标题列表比如我主站上 3个子站最新发布列表

  就像我前面说过数据显示层要尽量精简体积它是个Flash web浏览效率关键不适合做大量效果尤其是位图效果而它结构也要尽量清晰且工整便于代码控制对于Flash模式网站WebSite可以考虑直接将TextField放到_root上;而对于PS模式和混合模式则最好还是用MC对TextField进行包装以保证网站WebSite各栏目独立性

  浅谈数据层

  数据层可谓是整个Flash web中枢神经系统负责Flash web所有数据显示和交换还有功能实现甚至是动画控制

  在正式开始讲解数据层的前我想先回顾下我自己代码编写历史最开始时候般都是直接把代码写在元件上这样写局限性比较大很多功能无法实现;后来我开始尝试在时间轴上写可由于当时能力有限部分代码还是要写在元件上这样就造成代码混乱时间自己也记不清代码到底写哪儿;AS能力稍微强点后我就不再在元件上写代码了而是全部写在时间轴上般都是每个栏目或者是每个MC包含自己独自代码这样做好处是代码分布比较清晰而且代码独立性比较好但即便这样做还是不够理想如果网站WebSiteMC嵌套结果非常复杂每个MC代码都独自包含那么代码可能会写在很深层MC上而且MC很多话代码也将随的分布很散这样还是不方便代码集中管理也不容易从总体上把握网站WebSite数据的间联系

  现在我如何做呢?由于我现在不仅AS已经玩得很熟而且能够从宏观上对网站WebSite结构进行比较到位把握所以我已经完全有能力根据网站WebSite特点和功能在正式动工的前就把网站WebSite划分为若干功能模块然后用我自创MC 3帧式去完成每个模块实现

  打开我网站WebSite源文件你会发现除了主时间轴和主时间轴上系列具有“ 3帧式”结构空MC外其它地方极少有代码可以说核心代码已经完全从网站WebSite中分离了出来在主时间轴上般来说第层是AS层第 2层可有可无标签层第 3层就是数据层全部“ 3帧式”MC都放在这最下面那些层就是网站WebSite主框架了也许你已经忍不住要问了你老说“ 3帧式”到底什么是“ 3帧式”啊?问得好这正是我下面要讲重点

  “数据层MC 3帧式”是我为了方便数据管理而自创出来种有效数据组织框架它巧妙利用了时间轴具有清晰结构而且还具有通用性从字面意思我们便可以猜出来它是具有 3个空白关键帧影片剪辑这 3个帧名字按在时间轴上先后顺序依次为“chuShi”、“shuaXin”、“gongNeng”

  “chuShi”帧:这帧负责系统主要分两部分部分般都是大串变量这些变量又分为 3种种是所有这个MC要操作对象和其它元件接口;第 2种是些系统变量比如将负责留言显示页码变量为1就可以让留言为显示第页;最后还有个比较特殊布尔变量就是“yiJiaZai”我们把它为false表明此MC内控制外部数据此时还未进行过加载旦这个MC控制下数据加载成功我们立刻将其值变为true这样做好处是可以根据此值判断数据是否是第次加载然后进行区别设置和响应第 2部分则是注册刷新有经验动态Flash web开发者都应该知道Flash中数据刷新是重点这也是Flash web较常规网页最大优势的在这里我们需要注册俩个负责数据刷新:

  function chuShi{gotoAndPlay("chuShi");}

  function shuaXin{play;}

  稍后我会解释为什么

  “shuaXin”帧:这个帧是个空白关键帧什么都没有意义也将在下面解释

  “gongNeng”帧:这帧主要负责各种功能实现以及数据呈现为了方便对整个网站WebSite控制以及各“ 3帧式MC”的间相互控制我建议把比较重要功能都写成在“gongNeng”帧代码最后定要加上句gotoAndStop("shuaXin")这帧中还有个重头戏就是分析和处理但为了紧扣文章中心这里就不多讲了

  这样以来我们就建立起套简单有效数据控制机制首先在_root上将所有“ 3帧式MC”都stop到第也就是“chuShi”帧然后建立套数据加载机制通过控制 3帧式MC播放来控制数据加载顺序数据加载完成后我们就可以在任何地方通过控制 3帧式MC来控制这个MC负责网站WebSite某特定部分比如有个名字为“lieBiao_mc” 3帧式MC是负责网站WebSite文章标题列表这部分功能我们就可以通过下面极其简单代码来实现对文章列表控制:

  如果我们要得到文章列表状态只需要:_level0.lieBiao_mc.chuShi;

  如果我们要得到文章列表某特定状态只需要对负责此状态变量赋值然后:_level0.lieBiao_mc.shuaXin;

  如果我们只需要文章列表中项功能只需要:_level0.lieBiao_mc.特定功能;

  由于我们在“gongNeng”帧中就有分析、过渡动画等这些重复性内容所以当shuaXin这些内容就会自动触发非常简单好用



  数据层MC 3帧式就简单介绍到这里具体细节其实非常丰富这里只是抛砖引玉



Tags:  websphere目录结构 web服务器数据库 显示属性web web数据库

延伸阅读

最新评论

发表评论