如何动态创建Label标签,请大虾指点

解决方案 »

  1.   

    Private Sub Command1_Click()
     Dim exp_l As Label
     Set exp_l = Form1.Controls.Add("vb.label", "tt")
     exp_l.Caption = "创建了"
     exp_l.Visible = True
    End Sub
      

  2.   

    可是不行啊,错误提示为:对象不支持这个方法或属性form1.controls.add
    这是什么问题,还有没有别的方法?那个CreateObject是怎么用的?可不可以用它?
      

  3.   

    先在窗体上放一个Label控件(Label1),Index属性设为0。Private Sub Command1_Click()
      load Label1(1)
      Label1(1).Top = Label1(0).Top + Label1(0).Height + 500 '避免 Label1(0)和 Label1(1) 重叠。
       Label1(1).Caption = "Hello"
       Label1(1).Visible = True   load Label1(2)
      Label1(2).Top = Label1(1).Top + Label1(1).Height + 500 '避免 Label1(2)和 Label1(1) 重叠。
       Label1(2).Caption = "Hello"
       Label1(2).Visible = True
    End Sub
      

  4.   

    form1换成你要放label控件的窗体名称
      

  5.   

    To:danielinbiti(金) 
    我放label标签的窗体名字就是叫form1To;kissoflife(明月高楼休独倚,酒入愁肠,化作相思)
    EVB里label控件没有index这个属性
      

  6.   

    我就不明白,有现成的label控件,你创造它,那不是浪费。如果在vb中也许需要控件数组。那就有用武之地了。但在 evb中就那丁点的地方。干脆,画上几个 将 visible 为 false 用几个,几个就 true 几个.不就搞定了嘛。