Создание игры крестики нолики - C#
Формулировка задачи:
Возникла проблема при создание игры крестики нолики. В форме имеется 9 Picturebox-ов(3на3) При нажатие на один из них левой кнопкой рисуется крестик, правой нолик. Если в Picturebox1 при нажатием левой кнопкой мыши нарисовался рисунок, нужно сделать так чтобы при нажатие снова на этот же Picturebox1 в нем ничего больше не рисовалось, и чтобы нельзя было нажать на левую кнопку мыши пока не нажмеш на правую(пока не поставиш нолик). Подскажите как можно это сделать.
Решение задачи: «Создание игры крестики нолики»
textual
Листинг программы
public partial class Form1 : Form { public int x_MouseDown, y_MouseDown; int Number; int[] arr = { 0, 0, 0, 0, 0, 0, 0, 0, 0 }; public void Nolik(System.Windows.Forms.PictureBox PB, int Number) { Graphics g = PB.CreateGraphics(); g.DrawEllipse(Pens.Blue, 5, 5, 90, 90); g.Dispose(); arr[Number - 1] = 1; } ...... .... .... rivate void Form1_Load(object sender, EventArgs e) { Random rnd = new Random(); int RandomNolik = rnd.Next(1, 9); switch (RandomNolik) { case 1: Nolik(pictureBox1, RandomNolik); break; case 2: Nolik(pictureBox2, RandomNolik); break; case 3: Nolik(pictureBox3, RandomNolik); break; case 4: Nolik(pictureBox4, RandomNolik); break; case 5: Nolik(pictureBox5, RandomNolik); break; case 6: Nolik(pictureBox6, RandomNolik); break; case 7: Nolik(pictureBox7, RandomNolik); break; case 8: Nolik(pictureBox8, RandomNolik); break; case 9: Nolik(pictureBox9, RandomNolik); break; } if (arr[0] == 1 && arr[1] == 1 && arr[2] == 1 || arr[3] == 1 && arr[4] == 1 && arr[5] == 1 || arr[6] == 1 && arr[7] == 1 && arr[8] == 1 || arr[0] == 1 && arr[3] == 1 && arr[6] == 1 || arr[1] == 1 && arr[4] == 1 && arr[7] == 1 || arr[2] == 1 && arr[5] == 1 && arr[8] == 1 || arr[0] == 1 && arr[4] == 1 && arr[8] == 1 || arr[2] == 1 && arr[4] == 1 && arr[6] == 1) { MessageBox.Show("Выйграли синие!!"); } /* if (arr[0] == 1 && arr[1] == 1 && arr[2] == 1 || arr[3] == 1 && arr[4] == 1 && arr[5] == 1 || arr[6] == 1 && arr[7] == 1 && arr[8] == 1 || arr[0] == 1 && arr[3] == 1 && arr[6] == 1 || arr[1] == 1 && arr[4] == 1 && arr[7] == 1 || arr[2] == 1 && arr[5] == 1 && arr[8] == 1 || arr[0] == 1 && arr[4] == 1 && arr[8] == 1 || arr[2] == 1 && arr[4] == 1 && arr[6] == 1) { MessageBox.Show("Выйграли красные!!"); } */ } ..... .... .... private void pictureBox1_MouseUp(object sender, MouseEventArgs e) { Graphics g = Graphics.FromHwnd(pictureBox1.Handle); g.DrawLine(Pens.Red, 10, 10, 90, 90); g.DrawLine(Pens.Red, 90, 10, 10, 90); g.Dispose(); [U][B] arr[Number - 1] = -1;[/B][/U] вот тут пытался присвоить -1. }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д