(共26张PPT)
第十五课
综合练习——打字练习
问题与任务:
小明想利用VB编写一个打字游戏帮助同学们提高打字速。游戏玩法如下,如“图15-1打字游戏效果图”所示。
(1)每次屏幕上会随机出现5个字母,字母从顶部不断下落。
(2)若用户输入正确或者某字母下落超过底框,则变换字母并重新开始。
一、打字软件原理分析
观察游戏执行过程,结合本单元所学知识,打字游戏的实现原理如下。
(1)5个字母为一个控件数组,这样多个相同控件的处理就可以通过循环语句来实现。
(2)字母的下落就是控制
Timer控件的Top属性值的增加,如果字母的Top属性值大于图片框的
Height属性值,则字母消失。
(3)字母的重新开始包含两个动作利用ToP属性值归零回到顶部、利用随机函数变换内容。
(4)输人正确意味着键盘输入字符与窗口中的字符是相同的。
练一练
根据上面描述的功能和原理分析,填写表“15-1打字游戏主要控件分析表”。
本打字软件的关键就是将用户输的字母与窗口中的字母做比较,判断是否相同并给出相应的反应。因此,要想实现程序,就必须解决如何识别用户键盘盘输的字母这个问题。
二、
Keypress事件和Chr函数
?想一想
新建ー个工程,在窗体中加入Label控件,命名为
Labelxianshi,依照“图15-2
Keypress事件”所示输入代码。将键盘按下的字母与程序中出现的数字记录下来,与表15-2对比,看看是否一致。结合程序,体会
Keypress事件和
Keyascii的作用。
VB中,当用户按下键盐上的字母键时就会触发
Keypress事件。因此,我们可通过Keypress事件的
Key
Ascii参数来识别按键。
资料室
ASCII编码
计算机中所有的数据都要用二进制来表示、为了让不同计算机在相互通信时不发生混乱,国际标准化组织将ASCII码作为一种共同守的西文字符码标准。
试一试
如图15-3(a)所示先新建一个工程,在窗体中分别加入
LabelText、
Command控件,并修改相应控件的name属性。然后依图15-3(b)所示输入代码。记录Text中输入的数字与显示的结果,与表15-2对比,看看是否一致。结合程序,说说Chr函数的作用。
通过观察,我们发现Chr函数的作用就是返回以数值表达式为编码的字符,其语法格式为:Chr(数值表达式)。
?想一想
(1)结合本节知识,想想如何判断键盘输入的字母和指定的字母是否一致。
(2)Chr(Int(Rnd*25)+97)的作用是什么?
三、打字游戏的程序设计
相比以前的程序,本程序稍复杂一些,多次涉及For循环语句和If选择语句的混合使用。对于这样一些大型、复杂的程序,我们可以尝试着采取“分而治之”的策略,将它分解为更小、更容易处理的子问题。当这些子问题被求解后,原来的问题也就迎刃而解了。
例如,要使“如果输入的字母与下落的某个字母相同,则该字母随机变换字母并回到顶点”功能实现,我们可以采用上面的方法,如图“15-4
“判断键盘输入”的流程分解图”所示。
根据上述流程图,我们可以逐步写出对应的程序,具体如下:
根据表15-1可知,打字游戏的程序代码如“图15-5打字游戏的程序代码”所示。
四、打字游戏的完善
我们可以在程序中增加一个全局变量
score,用来计分:每输入一个正确字母就加1分每一个字母落地就扣1分。
还可以增加一个升级功能,当分数超过规定的值时就升级,升级后游戏的速度会提高(其实就是减少Timer控件的Interval属性值)。
讨论
我还能为游戏添加下面的功能。
(1)
(2)
(3)
思考与练习
请利用所学的VB程序知识设计一些简单的游戏或者解决一些实际问题。
课堂小结
这节课,我们学习了将较大型、较复题分解为更小型、更简单子问题的方法,
Keypress事件的意义,Chr函数的概念及应用。
板书设计
打字软件原理分析
Keypress事件和Chr函数
综合练习——打字练习
打字游戏的程序设计
打字游戏的完善第十五课
综合练习——打字练习
教学目标
(一)知识与技能
1将较大型、较复杂题分解为更小型、更简单子问题的方法。
2
KeyPress事件的意义。
3
Chr函数的概念及应用。
(二)过程与方法
演示与讲解、个别辅导相结合,学生认真汲取打字练习编程知识,自主、探究、体验编写打字游戏。
(三)情感态度价值观
学生从自主、探究、体验编写打字游戏中获得快乐,培养娃娃们的创新思维和创造力,积极进取的精神。
教学重难点
1、Keypress事件和Chr函数
2、打字游戏的程序设计
教学过程
问题与任务:
小明想利用VB编写一个打字游戏帮助同学们提高打字速。游戏玩法如下,如“图15-1打字游戏效果图”所示。
每次屏幕上会随机出现5个字母,字母从顶部不断下落。
若用户输入正确或者某字母下落超过底框,则变换字母并重新开始。
一、打字软件原理分析
观察游戏执行过程,结合本单元所学知识,打字游戏的实现原理如下。
(1)5个字母为一个控件数组,这样多个相同控件的处理就可以通过循环语句来实现。
(2)字母的下落就是控制
Timer控件的Top属性值的增加,如果字母的Top属性值大于图片框的
Height属性值,则字母消失。
(3)字母的重新开始包含两个动作利用ToP属性值归零回到顶部、利用随机函数变换内容。
(4)输人正确意味着键盘输入字符与窗口中的字符是相同的。
练一练
根据上面描述的功能和原理分析,填写表“15-1打字游戏主要控件分析表”。
本打字软件的关键就是将用户输的字母与窗口中的字母做比较,判断是否相同并给出相应的反应。因此,要想实现程序,就必须解决如何识别用户键盘盘输的字母这个问题。
二、
Keypress事件和Chr函数
?想一想
新建ー个工程,在窗体中加入Label控件,命名为
Labelxianshi,依照“图15-2
Keypress事件”所示输入代码。将键盘按下的字母与程序中出现的数字记录下来,与表15-2对比,看看是否一致。结合程序,体会
Keypress事件和
Keyascii的作用。
VB中,当用户按下键盐上的字母键时就会触发
Keypress事件。因此,我们可通过
Keypress事件的
Key
Ascii参数来识别按键。
资料室
ASCII编码
计算机中所有的数据都要用二进制来表示、为了让不同计算机在相互通信时不发生
混乱,国际标准化组织将ASCII码作为一种共同守的西文字符码标准。
试一试
如图15-3(a)所示先新建一个工程,在窗体中分别加入
LabelText、
Command控件,并修改相应控件的name属性。然后依图15-3(b)所示输入代码。记录Text中输入的数字与显示的结果,与表15-2对比,看看是否一致。结合程序,说说Chr函数的作用。
通过观察,我们发现Chr函数的作用就是返回以数值表达式为编码的字符,其语法格式为:Chr(数值表达式)。
?想一想
(1)结合本节知识,想想如何判断键盘输入的字母和指定的字母是否一致。
(2)Chr(Int(Rnd*25)+97)的作用是什么?
三、打字游戏的程序设计
相比以前的程序,本程序稍复杂一些,多次涉及For循环语句和If选择语句的混合使用。对于这样一些大型、复杂的程序,我们可以尝试着采取“分而治之”的策略,将它分解为更小、更容易处理的子问题。当这些子问题被求解后,原来的问题也就迎刃而解了。
例如,要使“如果输入的字母与下落的某个字母相同,则该字母随机变换字母并回到顶点”功能实现,我们可以采用上面的方法,如图“15-4
“判断键盘输入”的流程分解图”所示。
根据上述流程图,我们可以逐步写出对应的程序,具体如下:
根据表15-1可知,打字游戏的程序代码如“图15-5打字游戏的程序代码”所示。
四、打字游戏的完善
游戏设计出来后,如果大家感觉它太简单了,那么请大家开动脑筋,增加一些游戏必备的功能,会吸引更多的人!譬如说,我们可以在程序中增加一个全局变量
score,用来计分:每输入一个正确字母就加1分每一个字母落地就扣1分。
我们还可以增加一个升级功能,当分数超过规定的值时就升级,升级后游戏的速度会提高(其实就是减少Timer控件的Interval属性值)。
讨论
我还能为游戏添加下面的功能。
(1)
(2)
(3)
思考与练习
请利用所学的VB程序知识设计一些简单的游戏或者解决一些实际问题。
课堂小结
这节课,我们学习了将较大型、较复题分解为更小型、更简单子问题的方法,
Keypress事件的意义,Chr函数的概念及应用。
板书设计
打字软件原理分析
Keypress事件和Chr函数
综合练习——打字练习
打字游戏的程序设计
打字游戏的完善
课后反思