您当前的位置: 首页 > 网页设计 > Flash教程 > with语句指向自身的小办法

with语句指向自身的小办法

作者:guanchaofeng 来源:不详 发布时间: 2009-10-19 21:31 点击:
恩,对于with,不知道各位flasher们是一个什么样的了解。其实,with从理论上并不是一个非常重要的语句,没有with,很多功能照样可以实现,因为with本身并不负责创建、回收任何SWF中的资源。 然而,with的出现却大大方便了我们设计人员。代码中的with能让我们

with语句指向自身的小办法

  恩,对于with,不知道各位flasher们是一个什么样的了解。其实,with从理论上并不是一个非常重要的语句,没有with,很多功能照样可以实现,因为with本身并不负责创建、回收任何SWF中的资源。
  
  然而,with的出现却大大方便了我们设计人员。代码中的with能让我们更加清晰的对特定的MC进行管理。
  
  比如,在一段复杂的逻辑控制中要对mc1,mc2,mc3进行操作,用with能让程序结构更加清晰。
  
  with(mc1){
  
  //....
  
  }
  
  with(mc2){
  
  //...
  
  }
  
  with(mc3){
  
  //...
  
  }
  
  而且with和能够返回MC实例的方法结合使用能让程序更加简化,例如
  
  with(mc0.duplicateMovieClip("aw",1)){
  
  //setthePropertiesforthemc-aw
  
  }
  
  然而,有一个问题一直是困扰众多Flasher包括我的。那就是this在with中的指向。
  
  在with中,用_x,_y,_width这些属性可以访问本身mc的相关属性,可是惟独this无法指向自己。这是跟with语句本身的内核有关的。我曾经为此而郁闷很久,比如我要给这个mc增添一个变量,却不能用this.myVar=xxx;其实我们不必在意这些,因为根据mc本身的属性找到自己,也不是不可能。这里就要用到两个很容易被大家忽视的属性:_parent,_name。
  
  只需要设置一个句柄指向自己就可以了,我们可以设置为
  
  getThis=_parent[_name];
  
  这样,getThis就等同于this了。对mc进行更多的操作可以用getThis了,例如增设变量可以用
  
  getThis.t=19;
  
  而直接写“t=19”事实上是把这个值赋于了父级的mc。
  
  有趣的是,用with再对getThis嵌套,仍然可以得到本身,这样可以写出无穷层次的嵌套。当然这只是为了说明getThis的作用,没有任何意义。

分享到:
本文"with语句指向自身的小办法"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4