会计继续教育网上辅导  国际注册内部审计师考试辅导  经济师考试网上辅导  职称英语考试网上辅导  会计实务操作课程  中国注册会计师执业准则  高级会计师考试网上辅导  注册资产评估师考试网上辅导  注册税务师考试辅导  注册会计师考试辅导  中级会计资格考试辅导  初级会计资格考试辅导  司法考试辅导  医学考试辅导  卫生专业技术资格考试  护士/护师/主管护师资格考试网上辅导  执业药师资格考试(中药师、西药师)网上辅导  临床执业助理医师资格考试辅导  临床执业医师资格考试辅导  临床、口腔、公卫、中医、中西医医师资格实践技能考试网上辅导  口腔执业助理医师资格考试辅导  口腔执业医师资格考试辅导  公卫执业助理医师资格考试辅导  公卫执业医师资格考试辅导  中西医结合执业助理医师考试辅导  中西医结合执业医师考试辅导  中医执业助理医师考试辅导  中医执业医师资格考试辅导 

- 大学 - 大学校园文化

高校动态 |重点院校介绍 |艺术类院校 |军事院校 |教育部大学排名 |高等院校资料中心 |体育类院校 |外语类院校 |
大学校园文化 |民间大学排名 |
·flash动画制作基础教程:人体结构
·Action script 经典教程
·经典flash:大学自习曲
·日式漫画人物速成指南-女性的眼睛
·青春期健康----性教育网站大全
·FLASH 编程心得
·大学四年最浪费生命的十件事
·校园生活词典
·有一种爱情叫“十年”
·未名湖——悠悠湖畔的味道
当前位置: > 大学 > 大学校园文化
flash教程--如何正确理解“_root/_level/depth”的关系?
中国高校指南


  最近看到很多朋友发贴说不清楚_root和_level是干什么的,还有一个depth(深度)。经常把人搞得晕乎。xx( 所以痛下决心一定要让各位深入了解。如果认为说的对的给点掌声,认为说的错的扔点砖头顺带一起研究。

  _level与路径

  在开始教程之前先说一下文件的目录结构,因为这种结构与swf中的路径结构十分相似

  在我的电脑里有一个mypath.swf的文件,它存放在我的电脑的C盘的downloads目录的 A star算法实例目录中。我们访问的时候可以这么访问c:\downloads\A star算法实例\mypath.swf。这一长串路径说明了mypath.swf在我的电脑里的存储位置。Flash中MC或者其他对象在swf中的存储也遵循着同样的规则。

  还是以上面为例,如果我们把我的电脑看成一个Flash文件,那么下面的C D E盘就相当于flash中的_level0 _level1 _level2,downloads和A star算法实例这两个目录就相当于两个MC,而mypath.swf就是最终的mc。和文件的访问方式相同在这里访问mypath.swf你可以用_level.downloads.A star算法实例.(mypath.swf)来访问他了。是不是有点明白了?不过注意上面的_level.downloads.A star算法实例.(mypath.swf)只是说明一下原理真正使用时你不能用mypath.swf这种名字给MC命名的。

  关于_root

  _root相当于根,还是先用上面第一张图的文件结构来说明:对于c:\downloads\A star算法实例\mypath.swf这个文件,它的根就是C盘。针对c盘的任何一个文件她的根就是C盘,针对于任何一个D盘的文件她的根就是D盘以此类推。同样在flash里面也是如此。针对任何一个_leve0的Mc,它的_root就是_level0.依此类推。

  什么是depth

  Depth表示的是深度,这与_level和_root是两码事。因为depth至于显示有关,Depth越大,就显示在上面。而_level和_root的最重要的作用是用来识别MC在flash 中的路径。

  要注意的是_level是有各自默认的Depth,并且每个mc中都有自己的Depth可以分配。

  为什么说_level有各自默认的Depth。因为所有的_level(包括_level0、_level1、_level2......)他们实际上都从属于一个更上一级的MC,大概就是SWF本身了。_level0位于SWF的-16384这个位置_level1位于SWF的-16383这个位置依此类推,Flash大概支持955599999999个_level(具体的没有册出来),如果还是用文件的方式来理解,那么就是说可以有955599999999左右的盘符。

  如果你不想用系统对_level的默认深度你甚至可以交换_level0和level1的深度,别不信。试试知道了

  下面我们做一个例子说明一下

  在flash中新开一个文件, 第一桢写入loadMovie("logo.jpg",1); //这里的logo.jpg当然是填入你本地的任何一个jpg文件然后新建一个层随便画点什么东西在,保证这个层一直存在到30桢,一定要保证新加载的图片和这个层上面的东西重叠,否则无法看到效果的。

  第15桢写入

trace("_level0 depth="+this.getDepth()); 
trace("_level1 depth="+_level1.getDepth());
this.swapDepths(1);

  第30帧写入

trace("_level0 depth="+this.getDepth()); 
trace("_level1 depth="+_level1.getDepth());
stop();

  好了运行以下,你可以看到当_level0与depth 1 交换时,_level0上的东西移到了_level1的上面结果是

  _level0 depth=-16384
  _level1 depth=-16383
  _level0 depth=1
  _level1 depth=-16383

  是不是很有意思 ?

  提示:各个level中必须有东西才可以trace,如果你没有使用loadMovie到_level1,那么trace(_level1.getDepth())是无效的。

  前面说到的每个MC拥有自己可以分配的depth,这也好理解。就是说假如_level1中可以有自己的depth 1位置的MC,_level2中可以有自己的depth 1位置的MC。两个不会冲突,谁显示在最前面取决于_level2和_level1谁的depth 大depth(深度)。

  补充:所谓depth(深度),也就是几个mc的叠加位置。depth(深度)越大,位置越上。如果你有过aw的制作经验,那么这也就类似于它的层,上面的可以遮住下面的。

大学相关资料:

  • Action script 经典教程
  • FLASH 编程心得
  • 浅析Flash里的play和stop语句
  • flash声音特效实例精选-声音开关按钮
  • 日式漫画人物速成指南-女性的眼睛
  • 日式漫画人物速成指南-男性的眼睛
  • 日式漫画人物速成指南-头发基本造型
  • 日式漫画人物速成指南-多视角头部造型
  • 日式漫画人物速成指南-鼻子和嘴巴
  • 日式漫画人物速成指南-面部表情
  • ActionScript的基本语法规则
  • 鼠绘技术内幕概述(flash教程)
  • 用FLASH MX制作动画卡通人物
  • 用Flash实现移形换影效果
  • flash动画制作基础教程:人体结构
  • Flash视觉特效制作教程:科技之光
  • 仿央视网Flash动态导航菜单制作教程
  • 鼠绘动物技术内幕 (flash教程)
  • 鼠绘人物的技法内幕 (flash教程)
  • 鼠绘植物技术内幕 (flash教程)


  • Copyright(c) 1999-2006,China University Guide
    版权所有:中国高校指南