函数功能:该函数为一个多窗口位置结构分配内存并且返回该结构的句柄。
1 |
HDWP BeginDeferWindowPos(int nNumWindows); |
参数:
nNumWindows:指示存储位置信息的初始窗口数目。如有必要,DeferWindowPos函数可以增加该结构的大小。
返回值:如果函数成功,返回多窗口位置结构。如果分配内存时内存不足,则返回值为NULL。若想获得更多的错误信息,请调用GetLastError函数。
备注:多窗口位置结构是一个内部结构,应用程序不能直接引用。
DeferWindowPos函数在多窗口位置结构中填充了将被移动的一个或多个窗口的目标位置信息。EndDeferWindowPos接收该结构的句柄,并且依据存储在该结构中的信息重定位这些窗口。
如果在多窗口位置结构中的任意一个窗口中设置了SWP_HIDEWINDOW和SWP_SHOWWINDOW标志,则所有窗口都不能被重定位。
如果系统必须增加在多窗口位置结构中由nNumWindows设置的初始窗口数目,但又没有足够的内存分配,则系统的整个窗口重定位顺序失败(BeginDeferWindowsPos,DeferWindowsPos,EndDeferWindowPos)。应用程序通过指定所需最大数目,可以在执行过程中进行早期的检测和处理。
速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:不支持:头文件:winuser.h;库文件:user32.lib。