提问人:Danilo Ivanovic 提问时间:6/2/2018 最后编辑:CœurDanilo Ivanovic 更新时间:12/26/2018 访问量:51
我收到NullReferenceException错误,但我不知道为什么?[复制]
I get NullReferenceException error but I don't know why? [duplicate]
问:
我知道这个错误是在 object 为 null 的地方显示的。但就我而言,我不确定为什么会显示它。 我尝试在每 30px 的宽度上随机创建 10 个 PictureBox 对象,timer_tick这是我的代码。
PictureBox[] meteor;
int i=0;
Random rnd = new Random();
private void timer1_Tick(object sender, EventArgs e)
{
if(i<10)
{
int pozicija = rnd.Next(1, 25);
pozicija *= 30;
meteor[i] = new PictureBox()
{
Name = "pictureBox",
BackColor = Color.Transparent,
Size = new Size(80, 60),
Location = new Point(pozicija, 0),
Image = imageList2.Images[0],
};
this.Controls.Add(meteor[i]);
}
i++;
}
错误指向此代码行
this.Controls.Add(meteor[i]);
为什么 Visual Studio 显示此错误?
答:
1赞
Islam El-gendy
6/2/2018
#1
在使用数组之前,必须先实例化数组,如下所示:
PictureBox[] meteor = new PictureBox[10];
此外,我假设已经定义并且您已经向其添加了图像。imageList2
评论
meteor[i] = new PictureBox()
PictureBox[] meteor;
PictureBox[] meteor = new PictureBox[1000];