怎样把控件动态添加在不同的Tab页面上?我怎么添来添去都只能在第一页上啊?

解决方案 »

  1.   

    你先指定要添加到哪个tab上就可以了:
    Option Explicit
    Dim WithEvents CmdTest As CommandButtonPrivate Sub CmdTest_Click()
        MsgBox "hello"
    End SubPrivate Sub Command1_Click()
        SSTab1.Tab = 1
        Set CmdTest = Controls.Add("VB.CommandButton", "cmdtest", SSTab1)
        CmdTest.Visible = True
        CmdTest.Caption = "test"
        CmdTest.Move 200, 1000
    End Sub
      

  2.   

    设置sstab1.Tab=需要添加控件的页索引______________________________________
    Tab 属性(SSTab 控件)
          返回或设置 SSTab 控件的当前选项卡。语法object.Tab [ = tabnumber ]Tab 属性的语法包含下面部分:部分 描述 
    object 对象表达式,其值是 SSTab 控件。 
    tabnumber 数值表达式,它指示一个特定选项卡。第一个选项卡总是 0。 
    说明当前选项卡移动到前面并成为活动选项卡。一般说来,应用程序的用户单击选项卡,使之成为当前选项卡。但可能需要在代码中选择当前选项卡。例如,每次在应用程序中显示某个特定的对话框时,可能会希望相同的选项卡成为当前选项卡。如果用 Form 的 Hide 方法来解除对话框,当对话框下一次出现而且 Form 被隐藏起来时,最后的选项卡就成为活动选项卡。可以这样设置 SSTab 控件的 Tab 属性,使得在对话框每次出现时,相同的选项卡都是活动的。
      

  3.   

    '动态添加Text控件到SSTab各个页面上Dim myText() As VB.TextBoxPrivate Sub Command1_Click()
        ReDim myText(SSTab1.Tabs - 1)
        Dim i%
        For i = 0 To SSTab1.Tabs - 1
            SSTab1.Tab = i
            Set myText(i) = Form1.Controls.Add("vb.TextBox", "txt" & i & "")
            myText(i).Visible = True
            myText(i).Text = "txt" & i
            myText(i).Move 350, 500, 1000, 330
        Next
        SSTab1.Tab = 0
    End Sub