API函数之SetParent

    xiaoxiao2025-03-02  19

    Private DeclareFunction SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

    一.函数功能:

    改变某个子窗体的父窗口

    二.参数说明

    hWndChild :子窗口句柄      hWndNewParent:新的父窗口句柄

    (句柄:一个句柄是指使用的一个唯一的整数值,即一个4字节(64位程序中为8字节)长的数值,来标识应用程序中的不同对象和同类中的不同的实例)

    三.返回值

    函数成功:返回子窗体的原父窗口句柄(注意是一个整数值Long

    函数不成功:返回NULL

    四.举例说明

    1.窗体设计:一个模块,一个父窗体·MDIForm1,一个子窗体form

    Private Sub Command1_Click()

    a = (SetParent(Form1.hWnd, Picture1.hWnd)) '将新父窗口句柄付给变量 a

    Form1.Show '子窗体显示

    Form1.Label1.Caption = a

    End Sub

    2.运行结果:

    第一次运行结果为:

    第二次运行结果为:

    为什么两次运行的结果不一样那???

    原因是:显示的是句柄,是一个整数值,句柄是系统随机分配的,一个窗体只有一个句柄,但每个窗口上的每一个控件(按钮,图片框......)这些都有独立的句柄,此程序显示的是图片框的句柄(应为图片框作为了新的父窗口)

    转载请注明原文地址: https://ju.6miu.com/read-1296813.html
    最新回复(0)