+ -
当前位置:首页 → 问答吧 → SSTAB动态添加控件总是创建到第一页...在线等

SSTAB动态添加控件总是创建到第一页...在线等

时间:2011-12-16

来源:互联网

在窗口中有一个sstab,其tabs属性和每个tab的标题是在窗体加载时动态生成的
又写了个方法在各个tab上动态添加控件
运行时发现所有的控件都被创建到了第一个tab上
但是同样的创建控件的方法如果通过按钮调用就是正常的
有人知道为什么么?
谢谢!

作者: rickyle   发布时间: 2011-12-16

源代码如下VB code
Private Sub addLabels()

For i = 1 To SSTab1.Tabs
    SSTab1.Tab = i - 1
    For j = 1 To 10
    addLabel i, j
    Next j
Next i
End Sub

Private Sub addLabel(ByVal i As Integer, ByVal j As Integer)
Me.Controls.Add "VB.Label", "label" & CStr(i) & CStr(j)
With Me("label" & CStr(i) & CStr(j))
    Set .Container = SSTab1
    .Top = 500 * j
    .Left = 500
    .Caption = "label" & CStr(i) & CStr(j)
    .Visible = True
End With
End Sub

Private Sub Command1_Click()
addLabels           ’用按钮调用则正常生成
End Sub

Private Sub Form_Load()
SSTab1.Tabs = 3
addlabels  '在form load方法中执行则所有label都创建在sstab的第一页中
End Sub

作者: rickyle   发布时间: 2011-12-16

放到form_load中交控件加到动态生成的tab上是不行的~~~

作者: chinayuppie   发布时间: 2011-12-16