private void startToolStripMenuItem_Click(object sender, EventArgs e) { Text = "Bishop Exercise - Generating Solutions"; startToolStripMenuItem.Enabled = false; Stop = false; Finish = false; ResetBoard(); for (int i = 0; i < 8 && !Stop; i++) { maxCol = i + 1; solutions = 0; EnableCells(maxCol); for (int j = 0; j < maxCol && !Stop; j++) { board[maxCol - 1, j].BackgroundImage = BitmapGenerator.GenerateBishopCellImage(60, 60, cellColor[maxCol - 1, j]); Application.DoEvents(); Thread.Sleep(100); solutions++; statisticPanel.Controls[maxCol - 1].BackgroundImage = BitmapGenerator.GenerateNumberImage(100, 60, solutions); Application.DoEvents(); Thread.Sleep(100); MarkCells(maxCol - 1, j); } if (i > 1) { for (int j = 1; j < maxCol - 1 && !Stop; j++) { board[0, j].BackgroundImage = BitmapGenerator.GenerateBishopCellImage(60, 60, cellColor[0, j]); Application.DoEvents(); Thread.Sleep(100); solutions++; statisticPanel.Controls[maxCol - 1].BackgroundImage = BitmapGenerator.GenerateNumberImage(100, 60, solutions); Application.DoEvents(); Thread.Sleep(100); MarkCells(0, j); } } } startToolStripMenuItem.Enabled = true; Finish = true; Text = "Bishop Exercise"; }
private void ShowStatistic() { while (!Finish) { Thread.Sleep(500); } Text = "Bishop Exercise"; ResetBoard(); int[] solutions = new int[9]; solutions[1] = 1; solutions[2] = 2; for (int i = 3; i < 9; i++) { solutions[i] = i + (i - 2); } for (int i = 0; i < 8; i++) { statisticPanel.Controls[i].BackgroundImage = BitmapGenerator.GenerateNumberImage(100, 60, solutions[i + 1]); } }