为您搜集整理歌曲曲谱歌谱、简谱、吉它谱、钢琴谱!

Scratch编程25:曲谱的重复利用之列表的导入导出

流行类(作词:佚名 作曲:佚名)  演唱:佚名2022-02-10 15:16

  上一篇我们使用列表来演奏曲目。有了列表,我们就可以自己创建曲子,编辑曲子了。但是,一首曲子输入到列表里,也不容易,我们当然希望输入好的曲子能够反复利用。所以如果我们写好的曲子也想应用到别的程序里,要怎么做呢?Scratch的列表提供了导入和导出功能,这两个功能能够实现我们的想法。

  “文件名”:给导出的文件起个名字(图2中红色箭头指的输入框),默认是列表的名字,你可以就用这个名字,也可以另外起一个。“保存类型”:Scratch规定是保存成txt文件,不能更改。txt文件是通用的文本文件。图2红框处是保存的路径,你们自己要记住保存的位置。如何保存文件我在一开始的几篇就有说过了。

  注意:我们上一篇写的程序创建了两个列表,音符和节拍列表,这两个列表组成了一首曲子,所以我们导出列表也要把这两个列表都导出来。

  分别双击这两个文件,我们可以看到文件的内容,图4是打开的音符文件和节拍文件的内容和格式。

  ③ 点击“导入”项,会弹出选择文件的窗口(图6)。点击你要导入的文件,“文件名”处(图6红色箭头指向)就会有你要导入的文件名。

  右键点击变量模块里的列表变量,比如我们刚才创建的“音符”列表,在弹出的菜单里单击“删除音符列表”(图8),这个列表就删掉了。

  做一个配乐小动画,曲子就用上一篇练习的梁祝,乐曲响起,两只蝴蝶在草丛上飞(图9)。

  创建音符列表和节拍列表,直接导入梁祝曲目乐曲响起,蝴蝶就在草丛中飞乐曲停止,蝴蝶就停下2、程序设计

  音乐的播放由舞台这个编程对象来完成。当程序运行时,舞台首先设置好乐器和演奏速度,然后发布广播“音乐开始”,之后就播放乐曲,播放结束后,发布广播“音乐停止”。

  当角色接收到“音乐开始”的广播后,角色蝴蝶就开始在舞台上不断切换造型,并上下飞舞,直到接收到“音乐停止”的广播后,蝴蝶停下。

  在舞台背景设置区,点击“选择背景”图标,在背景列表中选择forest背景图(图11)。

  在角色设置区,点击“选择角色”图标,在角色列表中选择Butterfily1角色(图12),然后在角色设置区把大小调成50,以符合舞台的大小。

  首先编写舞台forest的程序。点击舞台背景设置区的图片,将该背景设为当前编程对象(图13)。

  ② 把上一篇曲子的音符和节拍列表导出成txt文件,然后分别导入新建的这两个列表里(图15)。

  ③ 新的列表创建好,列表前面的复选框是勾上的,并且会在舞台区显示出来,如图15。把节拍列表和音符列表前面的复选框里的勾去掉(图16),这样舞台区就不会显示列表了。

  我们需要有一个变量来记录我们已经演奏到第几个音符了,创建变量i(图17)。

  ④ 使用控制模块里的循环体来重复执行演奏积木,循环的次数为音符列表的项目数,就是音符的个数

  ⑥ 直到执行的次数为列表的项目数,就结束循环,然后发布广播“音乐停止”。

  然后编写角色Butterfily1的程序。点击角色设置区的Butterfily1角色,将该角色设为当前编程对象(图19),注意要把角色的大小设置为50。

  ① 当角色Butterfily1接收到“音乐开始”的广播时,首先移到舞台中央

  ② 然后切换造型,并且移动到另一个地点,实现蝴蝶飞舞的目的。每次移动是在现有位置的上下左右20的范围内。

  最后再复制一个角色Butterfily1由于是两只蝴蝶在飞,所以再复制一个Butterfily1角色,并且设置角色的颜色。右键点击Butterfily1角色,弹出菜单,选择“复制”项(图22)。

  角色设置区就会多出一个一模一样的Butterfily1角色,连代码都一样(图23)。

  由于需要颜色不一样,我们就在这个新复制的角色的代码上添加“设置颜色”的积木(图24红框处)。

  现在我们知道通过列表的导入导出功能,我们可以在不同的程序文件间共享一些内容,比如在这个例子里,我们辛辛苦苦写的乐谱,就可以导出成txt文件,供其它程序使用。

  我虽然不懂音乐,但是也玩过录音软件,很多录音软件是有音轨的。那如果我想用Scratch来实现多音轨呢,比如加点其它乐器,或者二重奏什么的,那要怎么实现呢?下一篇我会来说一下。

  原创不易,请勿抄袭。欢迎大家关注我,和我多交流,如果你喜欢,请转赞评三连,谢谢。

曲谱之家 ©2021 All Rights Reserved.
Powered by www.hpppw.com 
本站歌谱来源于网友自行上传及网络转载,如涉及版权及隐私问题,请来信至 kavg8@hotmail.com,本站会及时删除。