January 28, 2008

一个奇怪的Flash CS3 Bug

ActionScript3天地会公测中...

今早在开发中碰到一个怪异问题,浪费了一些时间debug,最后发现是Flash CS3 bug。

Bug表现:stageHeight数值不正常,始终比正常值少100px。

随便新建一个fla文档,在第一帧输入“trace(this.stage.stageHeight);”。发现stageHeight结果始终是比正常舞台高度少100像素,比如文档高度是400,那么trace出来的结果就是300。使用文档类也一样。

放到同事电脑上编译,则stageHeight结果正确。不解,相对无言。最后发现,如果把Ctrl+Enter弹出的调试窗口中的“带宽设置”视图取消,则trace正常。无语之极。平时开发时,大部分人都不会开这个“带宽设置”窗口,所以不易发现此bug。而我以前开发AS1,AS2留下的习惯,喜欢打开“带宽设置”窗口,结果就碰上这个飘忽的问题,白白郁闷了一些时间。放在这里,希望碰到同样问题的人,能够搜索到这篇文。

TrackBack

TrackBack URL for this entry:
http://www.kingda.org/cgi-bin/mt/mt-tb.cgi/234

Comments (9)

xucan:

带宽设置下面才是舞台...带宽设置正好是100px所以每次看会少100px,应该不算是bug.如果把带宽设置往上拉一拉,再Ctrl+Enter发现stageHeight变高了:)
不过确实有误导人的作用

Dream:

真的耶!不过楼上的说的也很对!

Dream:

真的耶!不过楼上的说的也很对!

qqq:

学习了~~~!!!

wizim:

确实不能算bug,stageHeight很精确的

这个我也碰到过,请把trace(this.stage.stageHeight);放到第2帧上就会正常了感觉是数据读取时间的问题.还有一个问题和这个类似,在制作大文件的时候在场景第一帧立刻跳转到后面的帧也会失败,他会跳转到中间的某个帧.也就是说在场景第一针的时候后面的帧还没有读出来.所以会跳转失败

这个我也碰到过,请把trace(this.stage.stageHeight);放到第2帧上就会正常了感觉是数据读取时间的问题.还有一个问题和这个类似,在制作大文件的时候在场景第一帧立刻跳转到后面的帧也会失败,他会跳转到中间的某个帧.也就是说在场景第一针的时候后面的帧还没有读出来.所以会跳转失败

lzy100p:

这个我也碰到过,请把trace(this.stage.stageHeight);放到第2帧上就会正常了感觉是数据读取时间的问题.还有一个问题和这个类似,在制作大文件的时候在场景第一帧立刻跳转到后面的帧也会失败,他会跳转到中间的某个帧.也就是说在场景第一针的时候后面的帧还没有读出来.所以会跳转失败

留下高见,发表评论

个人信息不会外泄,请放心填写。

姓名和Email必填。

发表评论后,请耐心等待,不要频繁刷新。提交完成后,刷新一下本页即可看到您的评论。^_^

请输入验证字符"f" :
文字广告:你是站长吗?注册阿里妈妈赚广告费

最近发表

归档

全部
Creative Commons License
此 Blog 中的日记
遵循以下授权:
Creative Commons
(创作共用) 授权
.