HWND GetParent(
  HWND hWnd   // handle to child window
);

解决方案 »

  1.   

    MsgBox GetParent(UserControl.hwnd)
      

  2.   

    如果控件不是直接放在一个Form上,而是放在Form上的一个PictureBox里,又该如何?
    以前我写的控件做了一个方法函数:SetOwner(lpHwnd as long),将Form的hWnd属性传给控件,不知道有什么好办法?
      

  3.   

    Private Declare Function CreateCompatibleBitmap Lib "gdi32" _
                                            (ByVal hdc As Long, _
                                             ByVal nWidth As Long, _
                                             ByVal nHeight As Long) As Long
      

  4.   

    Declare Function GetDCEx Lib "user32" Alias "GetDCEx" (ByVal hwnd As Long, ByVal hrgnclip As Long, ByVal fdwOptions As Long) As Long 
    说明 
    为指定窗口获取设备场景。相比GetDC,本函数提供了更多的选项 
    返回值 
    Long,执行成功为指定窗口设备场景句柄。出错则为0 
    参数表 
    参数 类型及说明 
    hwnd Long,窗口句柄 
    hrgnclip Long,窗口剪裁区 
    fdwOptions Long,标志字。根据下列常数设置各位: 
    DCX_CACHE 不管窗口类的样式,从windows缓存获取设备场景 
    DCX_CLIPCHILREN 所有可见的子窗口区都要从DC的剪裁区中排除 
    DCX_CLIPSIBLINGS 窗口hWnd上的所有可见兄弟窗口都要从DC的剪裁区中排除 
    DCX_EXCLUDERGN 从DC剪裁区中排除由hrgnclip指定的区域 
    DCX_EXCLUDEUPDATE 从设备场景剪裁区中排除刷新区域 
    DCX_INTERSECTRGN 由hrgnclip指定的区域与设备场景剪裁区相交 
    DCX_INTERSECTUPDATE 指定区域与设备场景刷新区域相交 
    DCX_LOCKWINDOWUPDATE 该标志为允许向窗口绘图,即使它由于LockWindowUpdate的调用被锁住 
    DCX_NORESETATTRS 设备场景释放后不被重置为默认状态 
    DCX_PARENTCLIP 放弃CS_PARENTDC类样式设置。DC的起点设为hWnd窗口的左上角 
    DCX_WINDOW A device context is returned for the entire window rectangle rather than just the client area of the window 
    DCX_VALIDATE Combine with DCX_INTERSECTUPDATE, validates the clipping region 
    注解 
    若窗口所属类具有CS_OWNDC, CS_CLASSDC 或 CS_PARENTDC样式,则获取的设备场景属窗口或类专有。这时,设备场景状态不能从初值修改。vb的窗体和控件通常是这种情况。否则,置DCX_CACHE位以从通用windows缓冲区恢复设备场景。若不置该位,则函数返回0。DC的状态位默认设置。从缓存获取的设备场景用过后要用ReleaseDC函数释放以防止系统死锁,因为windows只有5个缓存DC可用
    其他情况参见GetDC函数注解
     
      

  5.   

    其实用GetParent这个api的函数最简单,还有对应的SetParent