3

我有个问题。首先,我将向您展示我正在制作的扫雷游戏中的一小段代码摘录。

lbl_grid[mineX, mineY].Text = "*";

现在,它的作用是在我的网格中设置一个地雷看起来像一个*.

我想要的是lbl_grid[mineX, mineY].Text被分配一个图标的值。这可能吗?

我相信我可能不得不使用文本以外的东西,因为图标不是文本。

4

1 回答 1

1

你是对的,你将不得不使用文本以外的东西。

一种选择是制作 PictureBox 的 2D 数组。

int rows = 3;
int cols = 4;

List<List<PictureBox>> pictures = new List<List<PictureBox>>();

for(int r = 0; r < rows; r++)
{
    List<PictureBox> pList = new List<PictureBox>();
    for(int c = 0; c < cols; c++)
    {
        //do any positioning you need to do here
        pList.Add(new PictureBox());
    }
    pictures.Add(pList);
}

然后您可以访问和设置图像源。

pictures[rVal][cVal].Image = Image.FromFile("<file path>");
于 2013-02-12T21:35:43.223 回答