Exemple #1
0
 private void Form1_Load(object sender, EventArgs e)
 {
     if (File.Exists("D:\\2048记录")) //监测是否有存档
     {
         ToLoad();
     }
     else                             //如果没有存档,生成新的游戏。
     {
         _2048messageBox mes1 = new _2048messageBox();
         mes1.a = "提示";
         mes1.b = "    检测到您是第一次打开,可按F1打开帮助。\r\n    游戏为无限模式,直到GameOver才会终止。";
         mes1.StartPosition = FormStartPosition.CenterScreen;
         mes1.ShowDialog();
         c = new Class1();
         c.Reset();
     }
     mes.a = "提示";                   //生成帮助菜单
     mes.b = "F2:窗口总在最前\r\nF3:解锁/锁定窗口\r\nF4:隐藏任务栏图标\r\nF5:重新开始\r\nF6:截图并保存\r\nShife + ↑↓:调整透明度\r\n↑↓←→:控制方块移动\r\nESC:退出";
     drow();
     Num_pictureBox.Refresh();
 }          //窗口加载前的操作
Exemple #2
0
 }          //窗口加载前的操作
 private void Form1_KeyDown(object sender, KeyEventArgs e)
 {
     switch (e.KeyCode)
     {
         case Keys.Up:
             if (e.Modifiers == Keys.Shift)
                 this.Opacity -= 0.1;
             else
             {
                 c.Up();
                 if (c.change)
                     c.Add();
             }
             break;
         case Keys.Down:
             if (e.Modifiers == Keys.Shift)
                 this.Opacity += 0.1;
             else
             {
                 c.Down();
                 if (c.change)
                     c.Add();
             }
             break;
         case Keys.Left:
             c.Left();
             if (c.change)
                 c.Add();
             break;
         case Keys.Right:
             c.Right();
             if (c.change)
                 c.Add();
             break;
         case Keys.F1:
             mes.ShowDialog();
             break;
         case Keys.F2:
             this.TopMost = !this.TopMost;
             break;
         case Keys.F3:
             if (this.FormBorderStyle == FormBorderStyle.FixedToolWindow)
                 this.FormBorderStyle = FormBorderStyle.None;
             else
                 this.FormBorderStyle = FormBorderStyle.FixedToolWindow;
             break;
         case Keys.F4:
             this.ShowInTaskbar = !this.ShowInTaskbar;
             break;
         case Keys.F5:
             c = new Class1();
             c.Reset();
             Num_pictureBox.Refresh();
             break;
         case Keys.F6:
             _2048Screen();
             _2048messageBox mes2 = new _2048messageBox();
             mes2.a = "保存成功";
             mes2.b = "保存在" + Directory.GetCurrentDirectory() + "\\成绩截图.bmp";
             mes2.ShowDialog();
             break;
         case Keys.Escape:
             this.Close();
             break;
     }
     drow();
     Num_pictureBox.Refresh();
     grade.Text = c.grade.ToString();
     if (c.die)
     {
         gameOver();
     }
 }    //捕捉键盘按下的键,做出相应操作
Exemple #3
0
 }//序列化Class1类,并保存,相当于存档
 private void ToLoad()
 {
     FileStream fr = new FileStream("D:\\2048记录", FileMode.Open, FileAccess.Read);
     
     BinaryFormatter formatter_r = new BinaryFormatter();
     c = (Class1)formatter_r.Deserialize(fr);
     grade.Text = c.grade.ToString();
     bestgrade.Text = c.bestGrade.ToString();
     fr.Close();
     
 }//从文件反序列化读取存档