中断与停止程序
编辑 Scratch 程序的过程里,如果是针对较为复杂的逻辑运算,有时会需要使用“停止”程序的功能,这篇文章会详细介绍停止程序的用法,熟悉相关功能后,对于 Scratch 的开发就更如虎添翼。
快速导览:
三种停止程序的方法
透过停止程序积木的下拉选单,可以产生三种停止程序的方法:
- 停止全部:停止全部“重复积木”的程序,效果几乎等同于按下舞台区的“红色八角形停止按钮”( 这个方法很单纯,所以就不在下方多做介绍,但需要注意的是该积木是停止“重复积木”里的程序,跟重复积木无关的程序则不受影响 )。
- 停止这个程序:停止这个对象“包含这块积木”的整串重复程序。
- 停止这个对象的其他程序:停止这个对象但“不包含这块积木”的其他重复程序。
停止这个程序
“停止这个程序”积木会停止这个对象“包含这块积木”的整串程序,下图的例子,点击绿旗时,猫咪会开始转动,点击猫咪时 ( 碰到鼠标 + 按下鼠标 ),会停止猫咪的程序,猫咪就会停止转动。
如果角色同时有多组程序 ( 例如多个点击绿旗、收到广播...等 ),执行“停止这个程序”时,只有“包含这块积木”的整串程序会被停止,其他仍然继续运作。
下图的例子,点击猫咪后会停止旋转,但仍然持续讲话和变色。
如果将“停止这个程序”积木放在“函数”里,执行函数时,只会停止函数的积木串,对于执行函数的积木串则没有影响,以下图的范例而言,不论如何点击猫咪,猫咪仍然会一直旋转,不会停止 ( 将“停止这个程序”放在当角色被点击里,也是同样的概念 )。
如果在停止这个程序的积木串里,包含了执行的函数,执行“停止这个程序”时,仍然“不会影响”到函数内容,因为函数执行时,属于另外的积木串。
总而言之,只要记住“停止这个程序”积木“只会影响自己所在的积木串”,不会影响到其他积木。
停止这个对象的其他程序
“停止这个对象的其他程序”积木会停止这个对象“不包含这块积木”的其他串程序,下图的例子,点击绿旗时,猫咪会开始转动,点击猫咪时 ( 碰到鼠标 + 按下鼠标 ),猫咪会持续转动,但变色与讲话的程序会被停止。
虽然“停止这个对象的其他程序”会停止“不包含这块积木”的其他串程序,但角色的“分身”则不在此限,因为分身属于“新的对象”,不属于“这个对象的其他程序”,下图的例子,点击绿旗时会产生一个分身,不论如何点击猫咪,分身都不会停止转动。
对于有“多个分身”的角色而言,每个分身都是各自独立的对象,所以“停止这个对象的其他程序”只会影响角色或分身本身,不会影响到其他的分身,下图的例子,点击绿旗后,会产生三个分身不断变色旋转,当鼠标移上分身时,该分身就会停止变色,如果点击该分身,就会停止旋转,彼此之间不会互相影响。
微信扫码关注
抖音扫码关注