[英]Creating an array of pictureboxes in windows form (C#)
我正在尝试创建一个图片框对象的数组/列表,这些图片框对象在单击按钮时声明并添加到表单中(这意味着我不会用我的数组创建多个对象,但是计划是否可以运行它)。 没有收到错误,但图片框本身未出现在窗体上。
private void spawn_Click(object sender, EventArgs e)
{
var pictureTest[0] = new PictureBox();
pictureTest[0].Image = Properties.Resources.testimage;
pictureTest[0].Location = new Point(500, 250);
pictureTest[0].Name = "spawn1";
pictureTest[0].Size = new Size(50, 50);
pictureTest[0].TabIndex = 98;
pictureTest[0].TabStop = false;
this.Controls.Add(pictureTest[0]);
}
在我的研究过程中,我主要是得到使用this.Controls.Add
的建议,但这似乎不是我的问题。 我的数组之前用以下方法声明:
PictureBox[] pictureTest = new pictureTest[100];
正如@HansPassant在评论中说的那样,此代码无法编译。 以下应该大致上做您想要的:
int _position = 10;
private void spawn_Click(object sender, EventArgs e)
{
var pictureTest = new PictureBox();
pictureTest.Image = Properties.Resources.testimage;
pictureTest.Location = new Point(_position, 250);
pictureTest.Name = "spawn1";
pictureTest.Size = new Size(50, 50);
pictureTest.TabIndex = 98;
pictureTest.TabStop = false;
this.Controls.Add(pictureTest);
_position += 100;
}
首先,由于它们是表单的一部分,因此无需维护单独的PictureBox
数组。 其次,就像@HansPassant所说的-您将图像直接叠加在彼此之上,因此您无法确定是1幅还是1000幅。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.