如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第四课学案算法:程序的分支结构键盘控制掌握程序设计的分支结构特点和作用,理解if/else条件分支语句的功能及用法,并能灵活运用其编写程序代码;掌握Enable属性,掌握键盘控制方法,并能灵活运用其解决实际问题。任务分析:“我的玛丽游戏”是由3个动作组成的,即,“行走”,、“越崖”、和“坠崖”。而这3个动作是通过4个计时器的Timer事件实现的。当玛丽行走的过程按下空格键时,玛丽跳起后落下的程序执行步骤可以用流程表示,计时器1:行走“玛丽”行走、跳跃的程序流程False按下空格键?Ture计时器2:跳起计时器3:落下设计用户界面玛丽行走、越崖的程序设计步骤1:编写“玛丽”行走的事件过程代码:Rem行走PrivateSubTimer1_Timer()Image1.Left=Image1.Left-200EndSub步骤2:编写“玛丽越崖“的事件过程代码。Rem跃起PrivateSubTimer2_Timer()IfImage1.Top>3200ThenImage1.Left=Image1.Left-150'向左移动Image1.Top=Image1.Top-100'向上移动ElseTimer2.Enabled=False'跃起计时器不可用Timer3.Enabled=True'落下计时器可用EndIfEndSubRem落下PrivateSubTimer3_Timer()IfImage1.Top<=3550ThenImage1.Left=Image1.Left-150'向左移动Image1.Top=Image1.Top+80'向下移动ElseTimer3.Enabled=False'落下计时器不可用Timer1.Enabled=True'行走计时器可用EndIfEndSub步骤3:设置“键盘控制的事件过程“Rem键盘控制PrivateSubForm_KeyPress(KeyAsciiAsInteger)IfKeyAscii=32Then'是否按下空格键Timer2.Enabled=True'跃起计时器可用Timer1.Enabled=False'行走计时器不可用EndIfEndSub注意:同一时刻只应有一个计时器设置为可用,凄然设置为不可用。每个计时器触发的时间间隔不能为0,否则可能会出现一些不给出错误提示。三、玛丽“行走“、”越崖“与坠崖的程序设计玛丽坠崖:Rem坠崖PrivateSubTimer4_Timer()'坠落Image1.Top=Image1.Top+150EndSub四、优化“我的玛丽“游戏Timer1行走、Timer2跳起,Timer落下和Timer4坠落,这四个基本动作可组成初级玛丽游戏,优化1:实现玛丽行走的动画效果分析:前面代码中的image1是一张玛丽迈步动作的图片,程序运行动作单一,没有走路的感觉,为此可以将另外一张玛丽直立图片image2载入,将两张图片重合放在同一起始位置,程序运行时图片交替显示、隐藏,时玛丽在行走过程中具有动画的视觉效果。PrivateSubTimer1_Timer()'直行IfImage2.Visible=TrueThenImage2.Visible=FalseImage1.Visible=TrueElseImage1.Visible=FalseImage2.Visible=TrueEndIfImage1.Left=Image1.Left-200Image2.Left=Image2.Left-200EndIfEndSub优化2:通过单击窗体实现玛丽游戏的重新运行。当单击窗体时,让玛丽像回到了游戏的初始位置,并设置好4个计时器的初始位置。关于窗体的单击事件过程代码PrivateSubForm_Click()'单击窗体恢复游戏初始运行Image1.Left=7800Image1.Top=3550Timer1.Enabled=TrueTimer2.Enabled=FalseTimer3.Enabled=FalseTimer4.Enabled=FalseEndSub知识点:对于窗体,运行程序后,系统首先触发窗体的载入事件form_load(),PrivateSubForm_Click()‘指窗体的单击事件‘程序代码内容EndsubPrivateSubForm_Unload(CancelAsInteger)、窗体卸载UnloadMeEndSub2.Unload当窗体从屏幕上删除时触发的事件。1.________属性表示对象的宽