【FlashCS5】【莫名其妙】之变量 ComponentShim 未定义

【FlashCS5】【莫名其妙】之变量 ComponentShim 未定义
2011年10月03日
  ReferenceError: Error #1065: 变量 ComponentShim 未定义
  最近弄UI,一个游戏的UI,文件大得要命,关键很容易出错。
  上面这个错误整整花了半天的时间才解决。下面说说这个问题:
  起因:从别的文件拷贝了一个按钮过来新的文件,在新的文件里面把该按钮改成了MovieClip,同时导出类,继承了MovieClip的一个类。
  现象:提示ReferenceError: Error #1065: 变量 ComponentShim 未定义
  同时伴有编译错误:ButtonPublic.as5000: 类'ButtonPublic'必须为'flash.display.SimpleButton'的子类,因为它链接到该类型的库元件。
  这就是个莫名其妙的地方,明明已经把按钮改成了MovieClip,所有舞台上面的实例都已经设置成了MovieClip,FlashIDE还是偏偏要把它认成一个按钮。
  仔细观察发现,元件的属性里面有个源:引用了一个源fla文件,以及其中的元件,我猜想可能是这里有问题,每次编译的时候都会以这个为准。
  因此新建了一个元件,把里面的内容转移到新元件里面,同样导出类,继承MovieClip。这下编译通过,问题解决。
  这可能算是FlashIDE的一个Bug吧。 总结下:就是FlashIDE编译的时候,会去复制过来的源文件中更新库里面的文件,即使你不勾选总在发布时更新,这个元件还是保留了原始的文件里面的类型信息。
  建议:把一个元件从按钮转成影片剪辑的时候,最好新建一个元件,把按钮里面的内容拷贝进这个新文件,再使用FlashIDE的查找替换功能,把原来的按钮替换成这个新元件。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值