Navigation

    CreatiCode Scratch Forum

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • CreatiCode

    检测某个键是否被按下

    二维积木
    1
    1
    191
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      creaticodeteacher2-mail last edited by admin

      介绍

      可以用如下2个侦测类别中的布尔积木检测某个键是否被按下:

       
       

      积木:“【请选择】键被按下?”

      当这个积木运行的时候,如果指定的键被按下,积木就报告“true(真)”;否则就报告“false(假)”。

      Animation1.gif

      在下拉菜单中点击任意一个键即可选中该键:

      Animation2.gif

       
      假如你选择“任意”键,如果任意一个键被按下,这个积木就报告“true(真)”。

       
       

      积木:“(请输入)键被按下?”

      对于这个积木,你可以输入指定的键,而不是在下拉菜单中选择。还可以把变量作为输入值:

      Animation3.gif !

       
      注意:这个积木的输入值不区分大小写。

       
       

      一个常见错误

      一个常见错误就是用单个积木“如果( )那么”来检测是否按下键:

      Animation4.gif

      这行不通,因为当你点击绿旗按钮时,程序就迅速运行完这2个积木——“如果( )那么”和“( )键被按下?”。因此,当你点击绿旗之后再按下向右箭头,程序就没有反应,因为程序早已经结束了。

       
       

      结合“重复执行”、“如果( )那么”

      大多数情况下,正确方式就是将侦测积木“( )键被按下?”与积木“重复执行”、“如果( )那么”一起使用。这样的话,程序会重复不停地检测是否按下某个键。

      例如,当按下向左箭头时球向左转,当按下向右箭头时球向右转。

      Animation5.gif

       
       

      同时检测2个键

      还可以检测2个键是否同时被按下。例如,当同时按下“a”和“w”,球就转动。如果只按下一个键,球就不转。

      Animation6.gif

      1 Reply Last reply Reply Quote 0
      • First post
        Last post