【问题标题】:Change backcolor of array elements in loop在循环中更改数组元素的背景颜色
【发布时间】:2019-02-20 05:51:29
【问题描述】:

我正在尝试使用循环更改存储到数组中的标签的背景颜色,这是我的数组

Dim Setlab(3) as String
Setlab(0) = Label1.Text
SetLab(1) = Label2.Text
SetLab(2) = Label3.Text
SetLab(3) = Label4.Text 

这是我的循环

Dim bcolor As Object
bcolor = Color.Aqua
For i = 0 To Setlab.Length - 1 
    SetLab(i) = bcolor.ToString          
Next
Dim display As String = String.Join(",",SetLab)              
Label2.Text = "A = {" & display & "}"

但我的标签的输出是 Color[Aqua],当我尝试
Setlab(i) = bcolor 时,只有bcolor conversion from color to string is not valid 出错。你能帮我解决这个问题吗?谢谢。

【问题讨论】:

  • 您了解错误信息吗?没什么好说的了……
  • 你好@muffi 是的,我仍然尝试了不同的方法。但我正在尝试找到一种方法来循环执行它。
  • 您的数组只包含文本。文本没有固有的背景颜色。如果您要完成的是设置每个LabelBackColor,那么您将需要一个包含Labels 的数组。
  • @jmcilhinney 谢谢你的指点,我现在明白了。

标签: arrays vb.net loops colors tostring


【解决方案1】:

试试这个

Dim Setlab(3) as Label
Setlab(0) = Label1
SetLab(1) = Label2
SetLab(2) = Label3
SetLab(3) = Label4

那么你的循环应该是这样的

Dim bcolor As Color
bcolor = Color.Aqua
For i = 0 To Setlab.Length - 1 
    SetLab(i).BackColor = bcolor
Next

【讨论】:

  • 你好@preciousbetine,谢谢你的工作。我是vb新手,谢谢你的帮助。
猜你喜欢
  • 1970-01-01
  • 2021-10-16
  • 1970-01-01
  • 1970-01-01
  • 2013-07-28
  • 1970-01-01
  • 1970-01-01
  • 2011-04-19
  • 1970-01-01
相关资源
最近更新 更多