版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目:贪吃蛇游戏设计
工作任务八:主界面(Start)类工作任务八:主界面(Start)类一、主界面(Start类)分析此类继承自系统类,是本程序的主窗体。Start类主要用了继承来的字段、属性、方法和事件,我们只是在Start类中通过添加控件及设置控件的属性添加了对象字段和对象属性字段。
说明:通过向窗体上添加控件,系统会自动向窗体类中添加相应的对象字段,如本程序的mainMenu1、timer1、label1等,在类中对应的字段如下:privatemainMenu1;publicSystem.Windows.Forms.Timertimer1;privateSystem.Windows.Forms.Labellabel1;二、主界面(Start)类实现timer控件实现在用户定义的时间间隔引发事件的计时器此计时器最宜用于Windows窗体应用程序中,并且必须在窗口中使用。1)控件的属性⑴Enabled属性获取或设置计时器是否正在运行。如果计时器当前处于启用状态,则为true;否则为false。默认为false。⑵Interval属性获取或设置计时器开始计时之间的时间(以毫秒为单位)。计时器每次开始计时之间的毫秒数。该值不小于1。备注:若要获取该时间间隔的秒数,将此数字除以1,000。2)Tick事件当指定的计时器间隔已过去而且计时器处于启用状态时发生。如果需要自动运行,常用此控件。mainMenu控件MainMenu控件表示窗体菜单结构的容器。菜单由表示菜单结构中单个菜单命令的MenuItem对象组成。每个MenuItem可以成为应用程序的命令或其他子菜单项的父菜单。若要将MainMenu绑定到将显示它的Form,请将MainMenu分配给Form的Menu属性。进入每个MenuItem命令的单击事件方法与其他控件相同,通过双击此菜单项。窗体的KeyDown事件方法键被按下时发生。事件处理程序接收一个KeyEventArgs类型的参数,它包含与此事件相关的数据。其中KeyValues获取按键的键值。1)窗体的KeyDown事件方法⑴功能:根据按键情况,调用蛇的TurnDirection方法,改变蛇的运行方向。时间(timer1)控件的Tick事件⑴功能:显示场地Floor对象(使蛇运动);显示游戏等级和分数;判断是否玩到了通关和蛇是否死亡。⑵设计思路自选级别没有等级,其他级别根据分数是50的多少倍,计算级别,如果不是现在等级,保存各修改等级。若分数大于等于550,说明玩到了通关,停止游戏,显示恭喜消息框。调用CheckSnake方法判断蛇是否死亡,如果死亡,停止游戏。蛇的自动运行是由系统每隔一定时间自动调用此方法,当时间控件(timer)的Enable属性设置为true时,时间控件可用,设置为false时,时间控件不可用。通过下面语句启动游戏和停止游戏。timer1.Enable=true;//启动游戏timer1.Enable=false;//停止游戏3.各菜单事件方法1)“开始/重新开始”菜单⑴功能:游戏开始或重新开始游戏;若本菜单项为“开始”,改为“重新开始”;并且“暂停”菜单项可用。⑵设计思路及步骤:设置时间控件(timer1)的Enable属性为true。判断菜单文字是否为“开始”用语句:menuItem2.Text=“开始”;设置“暂停”菜单项的Enabled属性为true,使菜单项可用。当菜单项文字为“重新开始”时,调用floor对象的ReSet方法重新开始游戏。
2)“暂停/继续”菜单⑴功能:设置程序暂停运行或继续运行。
3)“退出”菜单功能:退出程序,用窗体的Close方法。4)“级别”菜单项的“第N级”子菜单⑴功能:此菜单项的第一级到第五级全是设置游戏级别。⑵设计思路设置时间控件的Interval属性为一定的值,游戏级别和分数,然后显示出来。5)“自定义速度”子菜单⑴功能:通过显示自定义速度(Speed)窗体,设置游戏的速度。⑵设计思路设置游戏速度时,游戏要停下来,设置好后继续;创建Speed实例,模式显示它;设置好速度值后把速度赋给PubClass类的kk静态属性保存,并设置时间控件(timer)的Interval属性。非模式窗体和模式窗体的区别创建新非模式窗体后,立即返回,且没有在当前活动窗体和新窗体间建立任何关系,即在保持新窗口的情况下关闭(或最小化)现有窗体或在保留现有窗体情况下关闭(或最小化)新窗口,都是可以的。创建模式窗体后,只有当建立的新窗口关闭之后,原有窗体才能重新获得控制权。即如果不关闭新窗口,将无法对原活动窗口进行任何操作。对新窗口进行的最小化、还原将会和原窗口一起进行,但是新窗口的关闭对原窗口没有影响。需要注意的是,不管是何种情况,只要主窗体被关闭了,或主程序结束了,那么将会关闭所有窗体,不管它是模式还是非模式。窗体调用任何窗体(派生于基类Form的类),都可以以两种方式进行显示。//非模式窗体
Fromqform=newForm();
();//模式窗体
Formqform=newForm();
();6)“帮助”子菜单功能:在一个消息框中显示帮助信息。问题探究本章学习了使用类和对象、GDI+绘图来创建项目。类是面向对象程序设计的一个基本概念,是对一组类似的对象的一般化描述,它包括:字段、属性、方法和事件几类成员。类是创建对象的模板,由类创建对象,可由下式表示它们的关系。
具体化(创建)类
对象
抽象字段是描述类特征的成员,如果需要描述类的哪方面的特征,就要设置一个相应的字段;属性是为了访问隐藏数据(字段)的,如果字段的数据需要在类外访问,就要定义相应的属性;方法是类能做的事情;事件是对象接受外部操作而发生的动作。类成员有非静态和静态之分非静态成员属于对象对象名.成员名静态成员属于类成员类名.成员名。构造函数构造函数的重载如果声明类时不包含任何构造函数,系统会给它创建一个默认的空构造函数,如果声明类时创建了一个构造函数,默认的空构造函数就没有了,需要的话就要声明一个。GDI+为Windows应用程序开发提供了一组用于图形图像编程的类、结构和枚举。用GDI+绘图的基本步骤是:①创
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工程基础材料加工术 8
- 2025北京十五中初三(上)开学考数学试题及答案
- 小学安全管理队伍培训
- 2026年春人教版七年级语文《外国诗二首》《古代诗歌五首》《写作语言要简明》教案
- 2026道德与法治五年级知识窗 拼搏精神培养
- 医院政府采购控制制度
- 医院腹门诊工作制度
- 半导体业务管理制度
- 单位工作制度汇编模板
- 卤味快餐管理制度规范
- 超短波疗法课件
- REACH SVHC 251项高关注物质清单
- 心静脉导管、PICC、CVC管道维护考试题(含答案)
- 行政工作行政工作处理标准化流程
- 粮食行业消防安全培训课件
- 2025版标准劳动合同模板下载
- 家长情绪管理课件教学
- 金融企业贷款减免管理办法
- 民间协会预算管理办法
- 2025-2030全球与中国蛋氨酸行业发展现状及趋势预测分析研究报告
- 2025年辽宁省大连市中考数学一模试卷(附参考答案)
评论
0/150
提交评论