第 6 课 设计动感抽号机
——定时器控件的使用
一、教材分析
1、本课的地位和作用
本课主要是学习定时器控件和随机函数的应用。定时器控件在可视化编程中应用非常广
泛,它可以模拟循环语句的使用,因此这节课为学生后面学习 For 循环语句起到一个承上启
下的作用。为学生学习程序的循环结构搭建了一个支架,为后面学习循环语句做了很好的铺
垫。同时随机也是计算机解决问题的一个重要特色,这节课学习随机函数的应用,让学生初
步接触用随机来解决生活中的问题。
2、本课主要内容介绍
(1)教材内容
通过创设学生抽奖的任务情景,引出本课知识的学习。教材中将对定时器控件、Rnd()
随机函数,取整函数 Int()等知识与应用通过系列活动主线贯穿起来,形成本课的知识主线。
(2)教材意图
目的是让学生通过设计一个动感抽号机程序,让其掌握定时器控件以及 Rnd 随机函数的
应用,初次体验编程实现计算机重复步骤执行处理事务,为后面更深入学习程序的循环结构
作铺垫,并体验用计算机的随机性解决问题的过程和方法。
在教材编写时,本课开篇通过创设一个任务情境,在课堂上现场抽奖,吸引学生兴趣。
然后通过将程序给学生体验,明确程序设计的界面和功能要求。
明确了设计思路后,教材花了不少篇幅介绍定时器控件的使用及原理。并通过一个简单
的例子自动打印“南海是我家,清洁卫生靠大家!”标语的程序来学习定时器控件的相关属性
设置。
界面的设计不是重点,所以教材是通过课堂活动让学生自主实现设计界面。
在算法实现上,通过流程图的方法阐明算法过程,而且教材花了较大的篇幅阐明如何利
用 Rnd()函数和取整函数 Int()获得 1-n 之间的随机整数。
教材给出了实现该项目的完整代码,为了让学生更加容易理解,代码给出了详细的注释。
定时器控件应用非常广泛,为了拓展学生灵活应用定时器控件,在实践与创作环节,特
地设计了编写秒表计时、电子时钟等小程序让学生实现,让学生更深刻理解定时器 Interval
属性的设置技巧。
本节课我把它设为两节课,一节课专门介绍定时器控件和重点函数、编写秒表计时、电
子时钟等小程序让学生实现;另一节专门设计动感抽号机。
二、 教学目标
【知识与技能】
(1)学会 Rnd()随机函数的应用
(2)学会 Int()取整函数的应用
⑶了解定时器控件的使用原理
⑷掌握定时器控件的应用
【过程与方法】
⑴体验定时器控件模拟无穷循环的过程
⑵掌握随机函数随意产生任意范围的整数的方法和推导过程
【情感态度与价值观】
(1)通过为妈妈设计程序减轻工作负担,渗透体贴父母、孝敬父母的德孝教育
(2)明白“人是机器的主宰”这一道理,激发学习动力,培养开拓进取的精神
三、重点、难点分析
【教学重点】
⑴定时器控件的原理和应用方法
⑵随机函数 Rnd 产生任意范围的整数的方法
【教学难点】
⑴定时器控件的原理
⑵Rnd 函数产生任意范围的整数的推导
四、学时安排: 2 课时
五、学法指导
1、学情分析
经过前面的学习,学生已初步学会了常用的窗体控件的使用方法,并掌握了如何定义
变量、变量赋值、表达式及输入输出数据的方法等知识和技能。这节课主要任务是通过
设计一个随机抽号的程序,掌握定时器控件和随机函数的应用。通过定时器控件实现模
拟循环语句重复执行,对于学生学习 VB 程序设计来说,认识上是一个质的飞跃。同时利
用计算机程序实现随机,也是首次在课本中出现。因此,对学生来说,这节课非常具有
挑战性,充满新鲜感。如果引导恰当,学生的求知激情能够被点燃。在教学上,从学生
的最近发展区出发,为其搭建知识的“支架”,循序渐进,突破本课的难点。
2、课前准备:
为学生准备“动感抽号机”程序,以让学生体验,准备“动感抽号机”程序的界面半
成品,节省上课的时间。
3、教学策略
本课教学中将知识的讲授、探究过程结合起来,让学生主动获得知识,并归纳出简明清
晰的知识体系。本节课内容多,于是我在练习的时候,为学生提供已经完成窗体界面制作的
半成品,已节省课堂时间。
4、教学拓展
对于能力强的学生,可以让他们应用定时器控件来设计秒表计时程序、电子钟程序等,
以提高他们灵活应用定时器控件。
六、 学习过程
研讨导案
一、 设计情境引入
(设计意图:进行一场抽奖游戏,吸引学生的注意力,引起学生学习的兴趣。)
二、学习新知
(一)、制作任务: 设计一个“课堂动感抽号机”程序
(设计意图:明确学习任务,带着目的教学)
(二)、项目分析:
1、程序界面要求:设计一个“动感抽号机”的程序,登录界面如左图所示。
2、程序功能要求:假设一个班学生的学号从 1 开始依次编号。本程序要求单击“开始”按
钮后,先输入班级人数,然后随机滚动显示学号,直到点击“停止”按钮后,先输入班级人数,
然后随机滚动显示学号,直到点击“停止”按钮后,弹出如右图所示的窗口,显示抽中的学号。
(设计意图:明确项目的内容)
(三)、实现思路:
1、设置窗体界面,在窗体中添加两个标签,添加一个文本框,添加两个按钮,添加一个
定时器控件。
2、在“开始”按钮中编写代码,实现输入全班人数及启动定时器的功能;在定时器中编写
代码,实现在文本框中随机动态显示学号;在“停止”按钮中编写代码,实现停止定时器以及
在弹出窗口中显示抽中的学号。
(设计意图:明确思路)
(四)、设计界面(小组合作探究活动):
小组探究学习活动:你想设计怎样的抽奖活动?
(设计意图:设计小组合作学习活动,调动学生的扩散思维,将被动学习变为主动学习)
设计界面参考:
三、设计算法
(一)、“开始”按钮功能算法如下:
(二)定时 器每隔 100 毫秒循环执行的 Timer 事件过程,
算法如下:
(三)“停止”按钮功能算法如下:
四、 编写代码
(一)、定义变量:( 探究活动一 )
Dim n As Interger
Dim num As Interger
(设计意图:明确变量的定义,在通用中可以全体调用)
(二)、根据“开始”按钮功能算法编写代码:( 探究活动二 )
n = Val(InputBox(“请输入全班人数”))
Timer1.Enabled=true
(设计意图:将书本内容重组,根据算法编写代码)
(三)、定时器每隔 100 毫秒循环执行的 Timer 事件过程,根据算法编写代码:( 探究活动三 )
Randomize
num = int(rnd()*n+1)
Text2.text=num
(设计意图:提前用半节课专门学习 rnd 函数和 int 函数,在本节课直接调用
(四)、根据“停止”按钮功能算法编写代码:( 探究活动四 )
Timer1.Enabled= False
Msgbox”恭喜” & num & “号被抽中”
(设计意图:将书本内容重组,内容更明确,思路更清晰,将 timer 计时器控件提前一
节课专门学习,利于本节课的教学。)
实践探究:1、存盘
2、生成可执行文件“设计动感号.exe”
(设计意图:完成作品,上交作业,检验教学和学习的效果)
五、反思总结
本节课是学生学习 VB 的第 6 课,经过前面的学习,学生已初步学会了
常用的窗体控件的使用方法,并掌握了如何定义变量、变量赋值、表达式及
输入输出数据的方法等知识和技能。这节课主要任务是通过设计一个随机抽
号的程序,掌握定时器控件和随机函数的应用。通过定时器控件实现模拟循
环语句重复执行,对于学生学习 VB 程序设计来说,认识上是一个质的飞跃。
同时利用计算机程序实现随机,也是首次在课本中出现。因此,对学生来说,
这节课非常具有挑战性,充满新鲜感。如果引导恰当,学生的求知激情能够
被点燃。在教学上,从学生的最近发展区出发,为其搭建知识的“支架”,
循序渐进,突破本课的难点。于是在这节课的学习当中,我设计了一个抽奖
的游戏,当时学生异常激动兴奋,因为没有试过课堂也会有这么高兴的时刻,
恨不得马上开始设计。但是这节课容量大,内容多,于是我把它分为两节课,
一节课专门讲 Timer 定时器的用法,rnd()函数和 Int()函数等的用法,另一节
课专门介绍动感抽号机的用法。这样学生既能明白函数和控件使用的原理,
又能完整的完成作品。我设计了小组探究活动以增加学生的学习兴趣,通过
此节课的学习,引起了学生对 VB 学习的兴趣,也更增加了自己学习 VB 的
自信心。为后面的学习做了良好的铺垫。
在这节课当中,为了调动学生的学习积极性,体现学生自主探究学习的
学习效果,我在中间设计了一个小组探究活动的环节:让学生先思考:你想
做怎样的抽奖项目!这个活动一下子把课堂气氛推到了高潮,调动了学生的
学习积极性,改变了学生的思维,让学生积极思考,变被动学习为主动学习,
学生的思想五花八门:好人抽奖机、学霸抽奖机、作业抽奖机、369 抽奖机
等等,整个课堂一场活跃,学生学习非常的专注,学生的学习内在驱动力也
成功的调动起来。
南海区教研员陈茂贤老师也高度评价了该课,认为是一节非常生动、成
功的信息技术课程。
六、检测与评估