私は問題を抱えています。理由はわかりませんが、それが実際に何であるかはわかりません。
私がやりたいのは、基本的にゲームのボードとしてチェックボックスの 10 x 10 フィールドを作成することだけです。
私が思いついたのは、これらのボックスの配列を使用して、フィールド内の座標に従ってボックス [0,0] からボックス [9,9] までを簡単に識別できるようにすることです。
これは私が苦労しているコードです:
private void Form1_Load(object sender, EventArgs e)
{
// == OPTIONS ========================================
int xpos = 60; // Position of the first Checkbox (x)
int ypos = 60; // Position of the first Checkbox (y)
int size = 10; // Number of Rows and Columns
int spc = 30; // Space between boxes (Default:20)
// ====================================================
//other Variables
int x, y;
//Creating the Game Field
CheckBox[,] box = new CheckBox[size,size];
for (int i = 0; i < size; i++)
{
for (int j = 0; j < size; j++)
{
box[i, j] = new CheckBox();
//For Debugging Purpuses: Showing i and j next to checkBox
box[i, j].Text = i + "" + j;
//Set Position
y = i * spc + xpos;
x = j * spc + ypos;
box[i, j].Location = new Point(x,y);
this.Controls.Add(box[i, j]);
}
}
}
ここから得られるのは、[0,0] から [0,9] までのマークが付いたチェックボックスの 1 つの列だけです。
そして、x と y または i と j を入れ替えても、それは決して変わりません。したがって、iE i はチェックボックスの行を取得することはなく、常に単一の列を取得します。これのどこが間違っているのですか?
私はそれらの10個のチェックボックスを取得するだけで、それ以上のものはありません。それらは互いに重ねられているようにも見えません。
ここで私を助けてくれることを願っています:)ありがとう。ティモ。