BeginDeferWindowPos函数为多窗口位置结构分配内存并返回结构的句柄。
HDWP BeginDeferWindowPos(
INT 【nNumWindows】 | //窗口数 |
); |
参数
【nNumWindows】
指定要存储位置信息的初始窗口数。如果需要,DeferWindowPos功能可以增加结构的大小。
返回值
如果函数成功,则返回值标识多窗口位置结构。如果系统资源不足以分配结构,则返回值为NULL。
备注
多窗口位置结构是内部结构;应用程序无法直接访问它。
DeferWindowPos填充多窗口位置结构,其中包含有关要移动的一个或多个窗口的目标位置信息。EndDeferWindowPos函数接受该结构的句柄,并通过使用结构中存储的信息重新定位窗口。
如果多窗口位置结构中的任何窗口都设置了SWP_HIDEWINDOW或SWP_SHOWWINDOW标志,则不会重新定位任何窗口。
如果Windows必须增加超出【nNumWindows】参数指定的初始大小的多窗口位置结构的大小,但是无法分配足够的内存来执行此操作,则Windows将失败整个窗口定位序列(BeginDeferWindowPos,DeferWindowPos)和EndDeferWindowPos)。通过指定所需的最大大小,应用程序可以在进程的早期检测和处理故障。
也可以看看