【问题标题】:vb.net 2010 picturebox array helpvb.net 2010 图片框数组帮助
【发布时间】:2011-03-08 15:55:21
【问题描述】:

我只是想知道如何创建一个图片框数组,就像我在 VB6 中复制和粘贴另一个图片框时一样,它询问我是否要将它们添加到一个数组中。这样做使他们的代码如下:

picBox(0).enabled = true
picBox(1).enabled = true
etc etc..

但我无法使用 VB.net 2010 做到这一点!我确定有一种方法可以对表单上的每个图片框执行此操作,但我不知道如何操作!?

任何帮助都会很棒! :o)

大卫

【问题讨论】:

  • 只是为了确认一下,因为 SLaks 正在处理为您提供实际替代方案,此功能在 VB6 中被称为“控制数组”,并且确实已从语言中完全删除。 SLaks 在代码中明确定义图片框列表的答案可能是目前最好的选择。

标签: vb.net arrays visual-studio-2010 arraylist picturebox


【解决方案1】:

您可以在代码隐藏中声明PictureBox()List(Of PictureBox),并在构造函数中将图片框添加到其中。
您甚至可以通过循环遍历包含图片框的容器的 Controls 集合来填充列表。

【讨论】:

  • 如果我在表单上有 3 个图片框,都命名为 picBox1、picBox2 和 picBox3,我该怎么做?会不会是这样的:Dim mypic() As PictureBox = {picbox1, picbox2, picBox3}
  • @Stealth:是的,除了你需要在构造函数中初始化它。 (因为图片框只在InitializeComponent中创建)
  • 我将如何只为所有这些事件制作一个 _Click 事件而不必执行 picBox1_ClickpicBox2_Click 等...?
  • 创建一个处理程序并添加Handles picBox1.Click, picBox2.Click, ...。或者,循环调用AddHandler。在处理程序中,使用sender 参数。
  • @StealthRT:在每个 Sub pictureBox1_Click() 函数的末尾,该行继续“处理 pictureBox1.Click”。处理程序方法不再由它们的名称定义,它们由“Handles”关键字定义,该关键字放在方法声明之后。要让一个方法处理多个方法,只需将这些方法添加到声明中即可;因此:“处理pictureBox1.Click,pictureBox2.Click”等。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-26
  • 1970-01-01
  • 2018-06-28
  • 2011-09-28
相关资源
最近更新 更多