接苹果游戏例程讲解(IF语句综合应用)【精品-doc】
接苹果游戏例程讲解,IF语句综合应用,
乌市一中 叶龙 一. 教学目标:
1( 知识目标:
a. 熟练掌握基本的IF语句。
b. 学会判断对象的位置关系(Left,Top,Height,Width属性)。
c. 学会利用时钟控件改变对象的位置。
d. 加深对VB中KeyDown事件概念的理解。
2( 能力目标:
a. 培养学生分析问题、解决问题的能力。
b. 培养学生良好的逻辑思维能力。
c. 培养学生综合运用知识的能力。
d. 培养学生创造性思维和创新能力。
3( 情感目标:
a. 通过游戏激发学生学习VB的兴趣。
b. 培养学生的合作能力及合作精神。
二( 教学重点:
重点:If语句中“条件”的设定及合适的语法结构。
难点:
1. 对象位置关系的判断。
2. 程序算法的理解与实现。。
三(教学过程:
, 导入:
这节课老师带大家一起来编写一个游戏,相比我们以前的程序可能有较大难度,但是我相信大家只要能积极动脑,一定能把这个程序写的比我的还好。下面我们先看一下游戏的效果(教师演示《接苹果》游戏功能:一个苹果随机从屏幕上方下落,单击方向键可以上下左右移动蓝子,接住苹果后加分)。
, 程序分析:
, 问题一:这个程序可能用到了哪些控件,
学生:Image,PictureBox,CommandButton,TextBox,Timer控件。 , 问题二:游戏中主要要解决几个问题,(教师引导) 1. 苹果从窗体上边不停下落,落地时再从上边下落。(一直循环) 2. 单击四个方向键让蓝子上下左右移动。
3. 如何判断蓝子是否接住了苹果。
4. 蓝子接住苹果后如何控制苹果,如何计分。
, 程序实现:
, 步骤一:新建
工程
路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理
文件,在窗体上添加所需的控件,并初始化。 , 步骤二:分析实现苹果从窗体上边不停下落,落地时再从上边下落的代码。
Private Sub Timer1_Timer()
Image1.Top = Image1.Top + 200
If Image1.Top + Image1.Height > Form1.Height Then
Image1.Top = -Image1.Height
Image1.Left = Rnd * (Form1.Width - Image1.Width)
End if
End Sub
通过Flash课件分析苹果落地时苹果与窗体的位置关系,以及苹果落地后苹果在窗体
上部出现的位置。
, 步骤三:分析单击四个方向键让蓝子上下左右移动。
Private Sub Pic1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyLeft Then Pic1.Left = Pic1.Left - 200
If KeyCode = vbKeyRight Then Pic1.Left = Pic1.Left + 200
End Sub
强调Pic的Keydown事件,上下移动蓝子的代码由学生完成。
, 步骤四:通过Flash 课件引导学生分析蓝子接住苹果时他们之间的位置关系。
水平方向:
Image1.Left > Pic1.Left And Image1.Left + Image1.Width < Pic1.Left + Pic1.Width
竖直方向:
Image1.Top + Image1.Height > Pic1.Top , 步骤五:引导学生分析在什么事件当中判断蓝子是否接住苹果,并且分析当满足蓝子接
住苹果的条件时苹果再次出现的位置,以及如何计分。
If Image1.Left > Pic1.Left And Image1.Left + Image1.Width < Pic1.Left + Pic1.Width_
And Image1.Top + Image1.Height > Pic1.Top Then
Image1.Top = -Image1.Height
Image1.Left = Rnd * (Form1.Width - Image1.Width)
Text1.Text = Val(Text1.text)+5
End If
, 学生实践:
分小组完成程序,看哪一组完成的最快,最好,最有新意,同时教师巡视观察学生在编
程过程中出现的问题。(未完成的同学课后在家完成)
, 总结反馈:
对完成较好的组给予肯定,同时针对巡视过程中发现的典型问题给予指正。 , 程序扩展:
教师提问:结合你们曾玩过的一些游戏,发挥自已的想象力,讨论我们的程序还可以有
哪些功能上的扩展与改进。(例如:不充许蓝子移出窗体,增设关卡,同时让两种或多
种不同水果下落,增加背景音乐,增加动画效果,苹果落地时可以考虑减分等等)
其实大家所提到的功能通过后面的学习都可以实现。