加载图片框后,要执行一些操作

时间:2018-11-25 20:17:56

标签: c# forms

我有一种方法可以生成50个PictureBox es,并将它们放入数组中

for (int i = 0; i < 50; i++){
  pb[i] = new PictureBox();
  pb[i].Name = "pictureBox" + i.ToString();
  pb[i].Location = new Point(xPos, yPos);
  pb[i].Size = new Size(100, 50);
  pb[i].BackColor = Color.Black;
  pb[i].Cursor = Cursors.Cross;
  pb[i].Click += (sender, ex) => this.shot();
  panel1.Controls.Add(pb[i]);
}

我使用计时器将它们加载到屏幕上。它每隔一秒钟左右就会加载数组中的每个元素。

我的问题是,只有加载后才能对PictureBox进行处理? 我已经尝试过使用WaitOnLoad,但这似乎并不正确。 例如,一旦生成,我想将PictureBox移到“ X”轴上(向右)。

1 个答案:

答案 0 :(得分:0)

根据评论:

  

一旦生成图片框并将其放置在数组中,我就有一个计时器,大约每秒钟一次将它们显示在屏幕上。

一个选择肯定是让计时器中的代码执行您想要的操作。如果您不喜欢这样做,则每个控件(包括图片框)都会有一个VisibleChanged事件,您可以订阅该事件,以便可以在显示或隐藏它时执行某些操作。