flash - 我的电脑很笨。 0 + 20 = 19.921875 !!!帮我!

标签 flash actionscript actionscript-2

您知道这很麻烦-当您的计算机无法获得正确的款项时!

我完全不知道为什么会这样:

_root.attachMovie("clippy","aClip",_root.getNextHighestDepth());

trace("alpha 1 = "+aClip._alpha);
aClip._alpha = 0;
trace("alpha 2 = "+aClip._alpha);
aClip._alpha += 20;
trace("alpha 3 = "+aClip._alpha);
aClip._alpha = 20;
trace("alpha 4 = "+aClip._alpha);

输出为:
alpha 1 = 100
alpha 2 = 0
alpha 3 = 19.921875
alpha 4 = 19.921875

19.921875应该是20! :(

我要哭了。我的处理器患有癌症吗?老年痴呆症?
谁说计算机没有犯错误?

P.S.我还使用了aClip._alpha = Math.round(aClip._alpha),但踪迹是一样的!

最佳答案

_alpha值存储为一个字节(我应该说8位-从0255的整数值)

设置_alpha值时,请使用百分比。
当您检索它时,它将产生百分比的精确十进制表示形式。

aClip._alpha = 20;
20%25651.2,因为它存储为整数,所以将其限制为51

然后,
51 / 256 * 100是Flash如何将其还给您的,即19.921875

关于flash - 我的电脑很笨。 0 + 20 = 19.921875 !!!帮我!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3373532/

相关文章:

flash - Flash ActionScript 2 的压缩和解压缩工具

actionscript-3 - 将 ActionScript 2 SWF 转换为 ActionScript 3 SWF 文件(代码可以被剥离)

javascript - 从 actionscript 调用 javascript 函数

apache-flex - 如何在ActionScript 3 Sprite中绘制文本?

actionscript-3 - flex中的target和currenttarget有什么区别?

flash - 如何在ActionScript 2.0中向打字机效果代码添加声音

flash - 为什么减少内容时我的 SWF 文件大小没有减小?

jquery - 网站在 Firefox 中加载缓慢

arrays - AS3 :removing every elements in an array at once using for loop

actionscript-3 - 告诉目标代码(转换为as3)