C#扫雷游戏-3(界面部分)

界面方面实际没有什么了,只要美观、人性化就行。因为所有的逻辑都在Game类中,只要将Game作为成员变量放入窗体类中就行了。这里就将个技巧,扫雷有3个级别,根据不同的级别设置游戏的砖块和行数、列数以及地雷数,并且我们要求选中项要打勾,而其他项没勾,用傻方法也能实现。那么如果10个级别或者100个级别,那冗余的代码就更多了。
所以,先遍历级别菜单,将选中项打勾,其余都去除勾,然后根据菜单项的Tag值设置对应的级别。

Code:
  1. using System;   
  2. using System.Collections.Generic;   
  3. using System.ComponentModel;   
  4. using System.Data;   
  5. using System.Drawing;   
  6. using System.Text;   
  7. using System.Windows.Forms;   
  8.   
  9. namespace MineSweeper {   
  10.     public partial class MainForm : Form {   
  11.   
  12.         Game game = new Game();   
  13.   
  14.         public MainForm() {   
  15.             InitializeComponent();   
  16.         }   
  17.   
  18.         private void tsmiStart_Click(object sender, EventArgs e) {   
  19.   
  20.         }   
  21.   
  22.         private void MainForm_Load(object sender, EventArgs e) {   
  23.             game.Init(pnlBoard,1);   
  24.         }   
  25.   
  26.         private void ChangeLevel(object sender, EventArgs e) {   
  27.             for(int i = 1; i <= 3; i++) {   
  28.                 ToolStripItem[] items = msMenu.Items.Find("tsmiLevel" + i, true);   
  29.                 if(items != null && items.Length > 0) {   
  30.                     ((ToolStripMenuItem)items[0]).Checked = false;   
  31.                 }   
  32.             }   
  33.             ToolStripMenuItem mItem = (ToolStripMenuItem)sender;   
  34.             mItem.Checked = true;   
  35.             game.Init(pnlBoard, Convert.ToInt32(mItem.Tag));   
  36.         }   
  37.     }   
  38. }  

点击下载扫雷源代码

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值