我在Visual Basic中创建了一个程序,通过单击PictureBox来打开文件,但是结果是,我已经结束了36个图片框,并且很痛苦处理他们中的每一个,因为只有这样,我发现引用的PictureBox(Nº) 正在作出
Dim pictureBoxes(35) As PictureBox
具有相同名称的Visual Basic句柄和多个变量
,并设定每一个如下:
pictureBoxes(0) = PictureBox1
pictureBoxes(1) = PictureBox2
pictureBoxes(2) = PictureBox3
...
pictureBoxes(35) = PictureBox36
然后,我可以用它在For循环中:
PictureBoxes(i).Image = iconForFile.ToBitmap()
所以,我的问题是,有没有办法让它更容易引用,而不是这样做?
同样的事情还挺让我在代码的手柄部分纳闷:
Private Sub PictureBox1_Click(sender As Object, e As EventArgs) Handles PictureBox1.Click, PictureBox2.Click, PictureBox3.Click, PictureBox4.Click, PictureBox5.Click, PictureBox6.Click, PictureBox7.Click, PictureBox8.Click, PictureBox9.Click, PictureBox10.Click, PictureBox11.Click, PictureBox12.Click, PictureBox13.Click...
任何光线将是非常有益的,谢谢!
你可以尝试在一个循环中使用它,并以相同的方式设置值,用循环。然后在同一个循环中声明事件句柄。 – ib11
Handles关键字对于设计师来说很不错。在代码中使用AddHandler语句。这使得为所有的pbs提供相同的事件处理程序,只是一个For循环而言,它是微不足道的。 –
@HansPassant,单独使用每个图片框的选择是精确地查看已经选择了哪个图片框,如果通过for循环设置了一个事件处理程序,它可能会为所有这样设置的图片框提供相同的结果 –