c#picturebox矩阵索引

时间:2016-02-01 13:29:20

标签: c# matrix indexing picturebox

所以我创建了一个图片框矩阵,我想得到每个图片框的索引," i"和" j"在该矩阵中点击的图片框。

这里我创建了矩阵和点击方法:

for (int i = 0; i < 3; i++)
            for (int j = 0; j < 3; j++)
            {
                place[i, j] = new PictureBox();
                place[i, j].Parent = table;
                place[i, j].Size = new Size(100, 100);
                place[i, j].Location = new Point(100 * i + 20 * i, 100 * j + 20 * j);
                place[i, j].Cursor = Cursors.Hand;
                place[i, j].Click += new EventHandler(p_Click);
            }

 void p_Click(object sender, EventArgs e)
    {
        var current = sender as PictureBox;
    }

我如何得到这个&#34;我&#34;和&#34; j&#34;?

2 个答案:

答案 0 :(得分:0)

您知道点击的位置。

确保它相对于图像的左上角,然后简单的整数算术将为您提供单击的单元格:

int i = location.X / 100;
int j = location.Y / 100;

我注意到你有一个偏移(边框)所以你也必须考虑到这一点。

答案 1 :(得分:0)

您可以在3*i+j中保存索引PictureBox.Tag,并在处理程序中检索它。