Ich wurde gebeten, einen Tic Tac Toe in Windows Form zu machen, und ich muss 2D-Array verwenden Ich versuche, 1 im Array für jeden zu speichern X und -1 für jede 0 dann werde ich die Werte in jeder Zeile, Spalte und Diagonale hinzufügen und überprüfen, ob es 3 oder -3C# Wie ich i und j in 2D-Array zuweisen, wenn ich auf einen Knopf drücke
das Problem ist, ich weiß nicht, wie zuweisen und i und j für jeden Element im Array nach i auf einer entsprechenden Taste
private void storeInboard(int i, int j, object sender, EventArgs e)
{
{
if ((sender as Button).Text == "X")
board[i][j] = 1;
else if ((sender as Button).Text == "O")
board[i][j] = -1;
}
}
hier i für jede Spalte prüfen, indem die Nummer
Angabeprivate bool checkCol(int col)
{
for (int i = 0; i < 3; i++)
{
rowSum += board[i][col];
if (colSum == 3 || colSum ==-3)
return true;
else
colSum = 0;
}
return false;
}
für Gewinner Überprüfung
private bool checkWinner()
{
return (checkCol(0) || checkCol(1) || checkCol(2) || checkDiag1() || checkDiag2() || checkRow(0) || checkRow(1) || checkRow(2));
}
hier ist die Schaltfläche Click-Ereignis >> sein für alle Tasten zugeordnet ist
private void button_click(object sender, EventArgs e)
{
if (turn)
{
(sender as Button).Text = "X";
}
else
(sender as Button).Text = "O";
turn = !turn;
turnCount++;
(sender as Button).Enabled = false;
if (checkWinner() && turnCount <=9)
MessageBox.Show("Winner !!!");
else
MessageBox.Show("Tie -.-");
so will einfach nur wissen, dass ich, wie kann ich eine i senden und j für das Ereignis storeInboard für jede Schaltfläche klicken Sie Dank im Voraus
Ich bin nicht klar, wie Ihre Tasten eingerichtet sind. Hast du ein Paar für jede der 9 Positionen, oder nur eins für X und eins für O? Wenn die Ersteren ihnen dann eindeutige Namen wie X00, X01, ... X22 geben. Wenn Letzteres erforderlich ist, müssen Sie einen anderen Weg für den Benutzer einbeziehen, um die Zelle auszuwählen, in die sie ein X oder O einfügen. – juharr
Ich fügte nur 9 Knöpfe hinzu, dass ihr Text in X oder O geändert werden kann. Und die Zelle wird ausgewählt, indem man auf die Taste in der GUI drückt >> ich kann die Knöpfe mit dem Array einfach nicht verbinden –