Option Explicit
Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
Private Sub Form_Load()
SetParent Text1.hWnd, Toolbar1.hWnd
Text1.Move 0, 0
Text1.Visible = True
End SubPrivate Sub Form_Unload(Cancel As Integer)
SetParent Text1.hWnd, Me.hWnd
End Sub

解决方案 »

  1.   

    应该这样吧?
    这只是部分的代码,其实在vb的在线帮助里就有介绍的Dim btnX As Button'向 Toolbar 控件添加一个 Textbox 控件
    Set btnX = Toolbar1.Buttons.Add(, "textbox1", , tbrPlaceholder)
    btnX.Width = 1500
    With Text1
        .Left = Toolbar1.Buttons("textbox1").Left
        .Top = Toolbar1.Buttons("textbox1").Top + 30
        .Width = Toolbar1.Buttons("textbox1").Width
        '.Height = Toolbar1.Buttons("textbox1").Height
    End With
      

  2.   

    2 : Walkline(☆往事浮现☆) 
    你这样叫添加一个文本框吗?
      

  3.   

    Option Explicit
    Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
    Dim WithEvents Text1 As VB.TextBox
    Private Sub Form_Load()
    Set Text1 = Controls.Add("vb.textbox", "Text1")SetParent Text1.hWnd, Toolbar1.hWnd
    Text1.Move 0, 0
    Text1.Visible = True
    End SubPrivate Sub Form_Unload(Cancel As Integer)
    SetParent Text1.hWnd, Me.hWnd
    End Sub
      

  4.   

    在窗体上当然要有一个 Textbox 啊,这当然不是添加,而是在 Toolbar 上添加 Textbox。对于你那样的回答我只能说,你根本就没看过帮助文件,至少没有仔细看过,这样的问题也要用 API 函数来解决,有点多余的感觉。对了,现在好多类似的问题好像都是用这个 Setparent 来解决的吧?
      

  5.   

    to huangguanshu() 
    我在MDIFORM中用,运行说textbox无对齐属性,不能用在MDIFORM中,怎么办?
      

  6.   

    或者试一试这个函数Private Declare Function CreateWindowEx Lib "user32" Alias "CreateWindowExA" (ByVal dwExStyle As Long, ByVal lpClassName As String, ByVal lpWindowName As String, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hWndParent As Long, ByVal hMenu As Long, ByVal hInstance As Long, lpParam As Any) As Long
      

  7.   

    设计时首先在mdi中间添加一个toolbar
    然后直接把textbox画到toolbar上面
    toolbar本身就是容器,它有对齐属性,如果需要动态创建textbox
    huangguanshu说的对