网站大量收购独家精品文档,联系QQ:2885784924

.C#俄罗斯方块(附代码).doc

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C#俄罗斯方块程序设计 姓 名: 学 号: 专 业:计算机科学与技术学院 班 级: 级 班 时 间: 2009—2010年第一学期 该实验制作的是小游戏----俄罗斯方块 1.可实现以下基本功能: 用户可自定义添加或删除方块样式及颜色; 用户可自定义修改游戏背景颜色及按键设置。 2.另增加了几个功能: 按键设置改变后点击保存,会弹出对话框提示“保存成功” ; 点击“开始”运行游戏,背景音乐自动播放,点击暂停后,背景音乐也随之停止; 每消除一行,会有特效声音提示消除成功; 根据消行多少会自动加分并显示。 游戏界面效果图如下: 配置窗体效果图如下: 砖块样式配置效果图如下: 游戏设计分为如下九个部分: 新建窗体“配置窗体”(TrmConfig) 添加TabControl控件 砖块样式配置 I.abel控件(lblMode) 点击“事件”,选择“Paint” Graphics gp=e.Graphics; gp.Clear(Color.Black); Pen p=new Pen(Color.White); for (int i=31;i155;i=i+31) gp.DrawLine(p,1,i,155,i); for (int i=31;i155;i=i+31) gp.DrawLine(p,i,1,i,155); SolidBrush s=new SolidBrush(blockColor); for (int x=0;x5;x++) { for(int y=0;y5;y++) { if(struArr[x,y]) { gp.FillRectangle(s,31*x+1,31*y+1,30,30); } } } 点击“事件”,选择“MouseClick” private bool[,] struArr=new bool[5,5]; private Color blockColor=Color.Red; -------------------------------------------------------- if (e.Button!=MouseButtons.Left) return; int xPos,yPos; xPos=e.X/31; yPos=e.Y/31; struArr[xPos,yPos]=!struArr[xPos,yPos]; bool b=struArr[xPos,yPos]; Graphics gp=lblMode.CreateGraphics(); SolidBrush s=new SolidBrush(b ? blockColor:Color.Black); gp.FillRectangle(s,31*xPos+1,31*yPos+1,30,30); gp.Dispose(); II.添加ColorDialog控件 添加label(lblColor)控件 点击“事件”,选择“click” colorDialog1.ShowDialog(); blockColor=colorDialog1.Color; lblColor.BackColor=colorDialog1.Color; lblMode.Invalidate(); III.添加listView控件(lsvBlockSet) 点击“事件”,选择“ItemSelectionChanged” if (e.IsSelected) { blockColor=Color.FromArgb(int.Parse(e.Item.SubItems[1].Text)); lblColor.BackColor=blockColor; string s=e.Item.SubItems[0].Text; for(int i=0;is.Length;i++) { struArr[i/5,i%5]=(s[i]==1)?true:false; } lblMode.Invalidate(); } IV.“添加”按钮(btnAdd) bool isEmpty=false; foreach (bool i in struArr) { if(i) { isEmpty=true; break; } } if (!isEmpty) { MessageBox.Show(图案为空,请先用鼠标点击左边窗口绘制图案!,提示窗口, MessageBoxButtons.OK, MessageBoxIcon.Information); return; } StringBuilder sb=new StringBuilder(25); foreach (bool i in struArr) { sb.Appen

文档评论(0)

jyf123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6153235235000003

1亿VIP精品文档

相关文档