scratch中当按下上移键和按键上移键是否按下?这两个命令有什么区别?

控制角色上下左右移动这两个命令有什么不同?做出来的效果有不同吗?请详细解答,谢谢!

不同:一个是事件,一个是侦测。

做出来的效果是不一样的。

在重复执行中,通过判断按下上移键,让角色Y坐标增加,当长按上移键时向上移动的效果是很流畅的;但是如果是事件中当按下上移键,让Y坐标增加,当长按上移键时向上移动时是卡顿的。没有找到特别官方的解释,只是对于事件中的当按下什么键,看到一个文章中说是“Scratch的设计者在做这个命令的时候,在程序里增加了抗干扰的代码。一般来说,按键操作每个人都不一样,有的人按的很快,有的人对键盘不熟悉,按的很慢,那么程序要判断你是按了几次呢?所以这里面就有一个抗干扰代码,来判断你是只按了一次键,而不是想连着一直按,所以给了个停顿来消除按键中的干扰因素。当然如果你确实一直按着不撒手,那说明你就是要一直按着,也就继续执行了。所以这个事件命令就是针对一次性的按键事件,而不是用来做按着不放的按键事件。

最后一句画重点,也就是说事件中的当按下 键执行后是有时间停顿的,循环中侦测判断能达到行云流水的效果。

所以说,两个命令是为了实现不同的效果,但是某些场景中,一方又是可以代替另一方。

温馨提示:答案为网友推荐,仅供参考
相似回答