当前位置: 首页 > article >正文

Scratch 014生日贺卡(上)

知识回顾:

1、“面向鼠标指针”积木块

2、“重复执行直到”积木块        

本次分享制作生日贺卡引入广播模块

案列效果:

生日贺卡上案例效果-CSDN直播

步骤拆解:

1、添加背景和角色
2、编辑贺卡造型添加名字
3、流程图的组成和画法
4、流程图顺序结构和循环结构
5、点击信封出现贺卡

1、从案例素材中添加角色和背景

生日贺卡上-CSDN直播

2、编辑贺卡造型添加名字

先点击“造型”,然后点击“贺卡”,打开造型的编辑页面。

接下来需要点击按钮“T”,它是用来编辑文字的。点击这个按钮来添加贺卡文字。

点击填充颜色按钮,出现下拉框,有三个选项:颜色,饱和度,亮度。

颜色调好之后呢,我们在贺卡的左上角点击一下然后输入文字,完成之后调整位置和大小就可以

3、流程图的组成和画法

流程图,通过这种方式可以让我们更好的理清程序的逻辑, 接下来我们一起细致地学习流程图相关的知识。

除了箭头用来连接图形,其中平行四边形我们用的比较少,剩下的图形用的比较多一些。

最后,用来分析程序的流程图画好之后,就可以根据流程图来拼接积木。

4、流程图顺序结构和循环结构

案例效果中可以看到重复切换了造型1和2,所以我们使用重复执行来切换造型。

接下来,按照我们绘制好的流程图来完成积木的拼接。

重复执行是逻辑上的一个概念,没有实际运行的效果,所以只需要使用箭头来体现出执行的顺序就可以了。

顺序结构和循环结构

5、点击信封出现贺卡

在我们点击信封之后可以听到发出声音,并且换成了贺卡的造型后逐渐变大。

程序出现问题了!点击信封之后造型又变回去了!

这是因为我们前面拼接的重复切换“信封1”和“信封2”的造型的那组积木和“当角色被点击”这组积木产生了冲突,两组积木都在运行,所以造型又变回去了。

我们可以使用前面学习过的“停止全部脚本”积木块中的另一个选项:“停止该角色的其他脚本”。

这个积木的执行逻辑是除了它所在的那组积木,这个角色的其他积木都会被停止运行,然后利用它停掉切换造型的那组积木,这样切换造型之后就不会出现再切换回去的情况啦!

案例效果中,贺卡是慢慢变大的,并不是一下子变大的,说明是将“有限重复执行”和“将大小增加”配合多次变大实现的。

在初始化的时候将大小设为了20, 如果将角色大小增加到100还需要 增加80,所以可以重复10次每次 增加8(10x8=80)来实现增加80 的效果。

不过,仅仅有这些还不够,如果我们多次点击信封会发现贺卡最终会变得特别大,所以我们为了确保最终的大小一定是100,再添加一个“将大小设为100”积木。

还记得“图层”的概念吗? 为了确保贺卡不会遮挡其他的角色,我们需要使用“移到最后面”积木来将贺卡的图层调整到最后面。

这一部分我已经完成了,但是怎么让“祝福语”这个角色出现。

这就需要我们学习到新的积木块知识。想从“贺卡”里面编程通知“祝福语”角色出现,要用“广播”积木块。

“发送广播”积木块

在Scratch中广播也具有同样的作用,发送的广播所有的角色都可以“听”到,但只有接收到相同广播的角色会执行相应的积木。 发送和接收内容不同的广播不能执行。

点击广播积木上面的下拉菜单,点击“新消息”就可以新建一个广播,我们在给广播命名的时候一定不要随便乱取,不然非常容易混乱。!

广播可以在不同的角色之间传递信息。

在这组积木的最后再添加一个“广播积木”,内容是“显示贺卡”,用来通知贺卡接收到广播时显示。        

发送了广播,还需要“祝福语”来接收广播。        

接下来需要在角色“祝福语”中添加“当接收到广播”积木,来控制它显示出来。

课堂总结

1、造型编辑添加文字
2、流程图图形及其表示的含义
3、流程图图形对应的常见积木
4、顺序结构和循环结构
5、“广播”积木块


http://www.kler.cn/a/398039.html

相关文章:

  • WebRTC视频 04 - 视频采集类 VideoCaptureDS 中篇
  • Android OpenGL ES详解——glTexImage2D方法
  • mqtt学习笔记(一)
  • 大学语文教材电子版(第十一版)教学用书PDF及课件
  • Spark RDD sortBy算子什么情况会触发shuffle
  • Ubuntu20.04 解决一段时间后键盘卡死的问题 ubuntu
  • 使用ACF插件向WooCommerce商城产品添加自定义字段
  • Net C# Nullable<T> Nullable、null、?
  • MPTCP协议
  • java基础知识全集(一篇看到爽)(持续更新中)
  • shell编程--永久环境变量和字符串显位
  • 【C#设计模式(7)——桥接模式(Bridge Pattern)】
  • wireshark演进之路——从GTK到Qt
  • 分布式,微服务,SpringCloudAlibaba,nacos,gateway,openFeign
  • Docker内存溢出报错问题解决
  • SpringMVC数据校验、数据格式化处理、国际化设置
  • 网络IP地址会经常换吗?深入解析与实操指南
  • 金山云大数据面试题及参考答案
  • Python爬虫定义入门知识
  • 【Linux庖丁解牛】—Linux基本指令(下)!
  • 黑马智数Day7
  • 对称加密算法DES的实现
  • 130. CSS2DRenderer(HTML标签)
  • 核心期刊论文供参考(中科院三区、可转)
  • lua实现雪花算法
  • 大数据中的时序数据,以及时序数据架构设计解决方案