自定义控件如何突破所在窗口大小?如Comb控件一样,下拉时不受窗口大小而改变

解决方案 »

  1.   

    '建立一个Form2的窗体.
    'BorderStyle=0Option Explicit
    '在自定义控件里面只有一个按扭控件.
    Private Sub Command1_Click()
      Dim ds As Object
      For Each ds In UserControl.Parent.Controls
         If ds.hWnd = UserControl.hWnd Then
            Form2.Left = UserControl.Parent.Left + ds.Left '再改一下位置
            Form2.Top = UserControl.Parent.Top + ds.Top    '再改一下位置
             '如果用GetWindowRect.再进行设置更好
            Form2.Show
         End If
      Next
    End SubPrivate Sub UserControl_Resize()
      Command1.Top = 0
      Command1.Left = 0
      Command1.Width = UserControl.Width
      Command1.Height = UserControl.Height
    End Sub'注意!不要删除或修改下列被注释的行!
    'MappingInfo=UserControl,UserControl,-1,hWnd
    Public Property Get hWnd() As Long
        hWnd = UserControl.hWnd
    End Property