c#课程设计 鼠标小游戏
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1 需求分析 (2)
2 概要设计 (2)
2.1 程序流程 (2)
2.2 系统模块 (3)
2.3 各模块功能 (3)
3 详细设计 (4)
3.1 主界面详细设计 (4)
3.2 第一关详细设计 (5)
3.3 第二关详细设计 (7)
3.4 第三关详细设计 (10)
3.5 第四关详细设计 (12)
4 调试分析 (17)
5 用户使用说明 (17)
6 测试结果 (19)
7 附录 (22)
1 需求分析
程序任务为一个鼠标小游戏,游戏规则为用户控制鼠标通过程序所给的路径抵达终点后游戏进入下一关,如果指针在移动过程都离开路径则游戏失败鼠标退回起点重新开始。用户可以通过此游戏提高自己对鼠标的控制能力。
2 概要设计
2.1程序流程
游戏设有四关,每一关通过则进入下一关,直到通过最后一关(第四关),或者用户中途退出,游戏结束。
图1.1程序流程图
2.2系统模块
程序共分5个模块即主界面、第一关、第二关、第三关、第四关模块。
2.3各模块功能
主界面:完成游戏的开启,以及游戏的选关功能。
第一关:完成第一关游戏的功能。
第二关:完成第二关游戏的功能。
第三关:完成第三关游戏的功能。
第四关:完成第四关游戏的功能。
3 详细设计
3.1 主界面模块设计
private void 开始游戏ToolStripMenuItem_Click(object sender, EventArgs e)//开始游戏
{
Form2 childform1 = new Form2(); //第一关界面新建
childform1.Show();
int x = this.Left + Width / 2;
int y =this.Top+ (int)( Height * 0.95);
Cursor.Position = new Point(x,y);
}
private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)//退出游戏
{
this.Close();
}
private void 第一关ToolStripMenuItem_Click(object sender, EventArgs e)//选择第一关
{
Form2 childform1 = new Form2();
childform1.Show();
int x = this.Left + Width / 2;
int y = this.Top + (int)(Height * 0.93);
Cursor.Position = new Point(x, y);
}
private void 第二关ToolStripMenuItem_Click(object sender, EventArgs e)//选择第二关
{
Form3 childform2 = new Form3();
childform2.Show();
int x = this.Left + (int)(Width * 0.95);
int y = this.Top + (int)(Height * 0.2);
Cursor.Position = new Point(x, y);
}
private void 第三关ToolStripMenuItem_Click(object sender, EventArgs e)//选择第三关
{
Form4 childform3 = new Form4();
childform3.Show();
int x = this.Left + (int)(Width * 0.05);
int y = this.Top + (int)(Height * 0.9);
Cursor.Position = new Point(x, y);
}
private void 第四关ToolStripMenuItem_Click(object sender, EventArgs e)//选择第四关
{
Form5 childform4 = new Form5();
childform4.Show();
int x = this.Left + (int)(Width * 0.5);
int y = this.Top + (int)(Height * 0.2);
Cursor.Position = new Point(x, y);
}
3.2 第一关模块设计
图3.2.1
黑色部分大的panel控件,白色与黄色的部分是属于picturebox控件。
private void panel1_MouseEnter(object sender, EventArgs e)//当指针移入黑色(panel)部分所触发事件
{
string message = "要继续吗?";//游戏结束,询问是否继续
string caption = "游戏结束";
MessageBoxButtons buttons = MessageBoxButtons.YesNo;
DialogResult result;
// Displays the MessageBox.
result = MessageBox.Show(this, message, caption, buttons,
MessageBoxIcon.Question);
if (result == DialogResult.No)//否,退出游戏
{
// Closes the parent form.
this.Close();
}
int x = this.Left + Width / 2;//继续游戏,指针回到起点位置
int y = this.Top + (int)(Height * 0.93);