Создание игры крестики нолики - 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.
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д