贪吃蛇游戏_设计_流程.ppt_第1页
贪吃蛇游戏_设计_流程.ppt_第2页
贪吃蛇游戏_设计_流程.ppt_第3页
贪吃蛇游戏_设计_流程.ppt_第4页
贪吃蛇游戏_设计_流程.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

常州工程职业技术学院计算机技术系 项目 贪吃蛇游戏设计 WinForm项目开发 今日工作 结束 WinForm项目开发 分析Start类 应用Timer控制系统 各项目组汇报预设计 提出问题 互评 点评 问题解决 进一步解读系统需求 WinForm项目开发 分析Start类 应用Timer控制系统 一 主界面 Start类 分析 此类继承自系统类System Windows Forms Form 是本程序的主窗体 Start类主要用了继承来的字段 属性 方法和事件 我们只是在Start类中通过添加控件及设置控件的属性添加了对象字段和对象属性字段 WinForm项目开发 说明 通过向窗体上添加控件 系统会自动向窗体类中添加相应的对象字段 如本程序的mainMenu1 timer1 label1等 在类中对应的字段如下 privateSystem Windows Forms MenuStripmainMenu1 publicSystem Windows Forms Timertimer1 privateSystem Windows Forms Labellabel1 分析Start类 应用Timer控制系统 WinForm项目开发 timer控件 实现在用户定义的时间间隔引发事件的计时器 此计时器最宜用于Windows窗体应用程序中 并且必须在窗口中使用 1 控件的属性 Enabled属性 获取或设置计时器是否正在运行 如果计时器当前处于启用状态 则为true 否则为false 默认为false 分析Start类 应用Timer控制系统 WinForm项目开发 Interval属性 获取或设置计时器开始计时之间的时间 以毫秒为单位 计时器每次开始计时之间的毫秒数 该值不小于1 备注 2 Tick事件 如果需要自动运行 常用此控件 分析Start类 应用Timer控制系统 若要获取该时间间隔的秒数 将此数字除以1 000 当指定的计时器间隔已过去而且计时器处于启用状态时发生 WinForm项目开发 时间 timer1 控件的Tick事件 功能 设计思路 自选级别没有等级 其他级别根据分数是50的多少倍 计算级别 如果不是现在等级 保存各修改等级 若分数大于等于550 说明玩到了通关 停止游戏 显示恭喜消息框 分析Start类 应用Timer控制系统 显示场地Floor对象 使蛇运动 显示游戏等级和分数 判断是否玩到了通关和蛇是否死亡 WinForm项目开发 调用CheckSnake方法判断蛇是否死亡 如果死亡 停止游戏 蛇的自动运行是由系统每隔一定时间自动调用此方法 当时间控件 timer 的Enable属性设置为true时 时间控件可用 设置为false时 时间控件不可用 通过下面语句启动游戏和停止游戏 timer1 Enable true 启动游戏 timer1 Enable false 停止游戏 分析Start类 应用Timer控制系统 WinForm项目开发 分析Start类 应用Timer控制系统 显示运动场地 显示分数 保存现在级别到级数 计算现在的级别 设置新速度 结束游戏 显示级数 开始 现在级别不是原级数且不是自选速度 分数达到550了吗 结束游戏 显示 恭喜 消息框 蛇死亡了吗 F T T T F F 结束 WinForm项目开发 窗体的KeyDown事件方法 键被按下时发生 事件处理程序接收一个KeyEventArgs类型的参数 它包含与此事件相关的数据 其中KeyValues获取按键的键值 37 38 39 40 1 窗体的KeyDown事件方法 功能 分析Start类 应用Timer控制系统 根据按键情况 调用蛇的TurnDirection方法 改变蛇的运行方向 WinForm项目开发 分析Start类 应用Timer控制系统 开始 定义整型变量k d 取e KeyValue给k 按向左光标键 d 3 按向下光标键 d 2 按向右光标键 d 1 按向上光标键 d 0 调用蛇的TurnDirection方法 结束 T T T T F F F F 读取当前蛇的运行方向给d WinForm项目开发 分析设计并实现系统主菜单 各项目组汇报预设计 提出问题 互评 点评 问题解决 进一步解读系统需求 WinForm项目开发 1 MenuStrip控件 MenuStrip控件表示窗体菜单结构的容器 可以将ToolStripMenuItem对象添加到表示菜单结构中各菜单命令的MenuStrip中 进入每个toolStripMenuItem命令的单击事件方法与其他控件相同 即通过双击此菜单项 分析设计并实现系统主菜单 每个ToolStripMenuItem可以成为应用程序的命令或其他子菜单项的父菜单 WinForm项目开发 2 开始 重新开始 菜单 1 功能 游戏开始或重新开始游戏 若本菜单项为 开始 改为 重新开始 并且 暂停 菜单项可用 分析设计并实现系统主菜单 WinForm项目开发 1 开始游戏 timer1 Enable true 2 判断菜单是否为 开始 menuItem2 Text 开始 4 当菜单项为 重新开始 时 调用 2 设计思路及步骤 3 设置 暂停 菜单项可用 menuItem3 Enabled true floor ReSet 分析设计并实现系统主菜单 WinForm项目开发 开始游戏 菜单文本为 开始 吗 菜单文本改为 重新开始 重新开始游戏 分数恢复为0 开始 结束 T F 暂停 继续 菜单可用 分析设计并实现系统主菜单 WinForm项目开发 3 暂停 继续 菜单 功能 设置程序暂停运行或继续运行 分析设计并实现系统主菜单 WinForm项目开发 4 退出 菜单 功能 退出程序 用窗体的Close方法 5 级别 菜单项的 第N级 子菜单 功能 此菜单项的第一级到第五级全是设置游戏级别 设计思路 设置时间控件的Interval属性为一定的值 游戏级别和分数 然后显示出来 分析设计并实现系统主菜单 WinForm项目开发 WinForm项目开发 6 自定义速度 子菜单 功能 通过显示自定义速度 Speed 窗体 设置游戏的速度 设计思路 设置游戏速度时 游戏要停下来 设置好后继续 创建Speed实例 模式显示它 设置好速度值后把速度赋给PubClass类的kk静态属性保存 并设置时间控件 timer 的Interval属性 分析设计并实现系统主菜单 WinForm项目开发 7 非模式窗体和模式窗体 创建新非模式窗体后 立即返回 且没有在当前活动窗体和新窗体间建立任何关系 即在保持新窗口的情况下关闭 或最小化 现有窗体或在保留现有窗体情况下关闭 或最小化 新窗口 都是可以的 分析设计并实现系统主菜单 WinForm项目开发 创建模式窗体后 只有当建立的新窗口关闭之后 原有窗体才能重新获得控制权 需要注意的是 不管是何种情况 只要主窗体被关闭了 或主程序结束了 那么Application Run将会关闭所有窗体 不管它是模式还是非模式 即如果不关闭新窗口 将无法对原活动窗口进行任何操作 对新窗口进行的最小化 还原将会和原窗口一起进行 但是新窗口的关闭对原窗口没有影响 分析设计并实现系统主菜单 WinForm项目开发 任何窗体 派生于基类Form的类 都可以以两种方式进行显示 窗体调用 非模式窗体 Fromqform newForm qform Show 分析设计并实现系统主菜单 WinForm项目开发 Formqform newForm 模式窗体 qform ShowDialog 6 帮助 子菜单 功能 在一个消息框中显示帮助信息 分析设计并实现系统主菜单 WinForm项目开发 项目总结 本章学习了使用类和对象 GDI 绘图来创建项目 类是面向对象程序设计的一个基本概念 是对一组类似的对象的一般化描述 它包括 字段 属性 方法和事件几类成员 类是创建对象的模板 由类创建对象 可由下式表示它们的关系 WinForm项目开发 具体化 创建 类对象抽象 字段是描述类特征的成员 如果需要描述类的哪方面的特征 就要设置一个相应的字段 属性是为了访问隐藏数据 字段 的 如果字段的数据需要在类外访问 就要定义相应的属性 方法是类能做的事情 事件是对象接受外部操作而发生的动作 项目总结 WinForm项目开发 类成员有非静态和静态之分 非静态成员属于对象 对象名 成员名 静态成员属于类成员 类名 成员名 构造函数 构造函数的重载 如果声明类时不包含任何构造函数 系统会给它创建一个默认的空构造函数 如果声明类时创建了一个构造函数 默认的空构造函数就没有了 需要的话就要声明一个 项目总结 WinForm项目开发 GDI 为Windows应用程序开发提供了一组用于图形图像编程的类 结构和枚举 用GDI 绘图的基本步骤是 创建Graphics对象 创建画笔或画刷对象 并定义颜色 用Graphics对象方法画图 绘制空心图形要用画笔 绘制实心图形要用画刷 项目总结 W

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论