当子窗口被创建或销毁时,或当用户在光标在子窗口之上时单击鼠标按钮时,WM_PARENTNOTIFY消息将发送到子窗口的父级。当子窗口被创建时,系统会在创建窗口返回的CreateWindow或CreateWindowEx函数之前发送WM_PARENTNOTIFY。当子窗口被破坏时,Windows会在进行任何处理之前发送消息以销毁窗口。
WM_PARENTNOTIFY
fwEvent = LOWORD(wParam); //事件标志
idChild = HIWORD(wParam); //子窗口的标识符
lValue = lParam; //子句柄或光标坐标
参数
【fwEvent】
【wParam中】的低位字的值。指定要通知父级的事件。此参数可以是以下值之一:
值 | 含义 |
WM_CREATE | 正在创建子窗口。 |
WM_DESTROY | 孩子的窗户被毁了。 |
WM_LBUTTONDOWN | 用户将光标放在子窗口上,并点击了鼠标左键。 |
WM_MBUTTONDOWN | 用户将光标放在子窗口上,并点击了鼠标中键。 |
WM_RBUTTONDOWN | 用户已将光标放在子窗口上,并单击鼠标右键。 |
【idChild】
【wParam中】的高字词的值。如果【fwEvent】参数是WM_CREATE或WM_DESTROY值,则【idChild】指定子窗口的标识符。否则,【idChild】未定义。
【左值】
如果【fwEvent】参数是WM_CREATE或WM_DESTROY值,则包含子窗口的句柄;否则,【左值】包含光标的x坐标和y坐标。x坐标在低位字中,y坐标在高位字中。
返回值
如果应用程序处理此消息,则应返回零。
备注
此消息也发送到子窗口的所有祖先窗口,包括顶级窗口。
除了具有WS_EX_NOPARENTNOTIFY扩展窗口样式的子窗口之外,所有子窗口都将此消息发送到其父窗口。默认情况下,对话框中的子窗口具有WS_EX_NOPARENTNOTIFY样式,除非调用CreateWindowEx函数来创建没有此样式的子窗口。
也可以看看
CreateWindow, CreateWindowEx, WM_CREATE, WM_DESTROY, WM_LBUTTONDOWN, WM_MBUTTONDOWN, WM_RBUTTONDOWN