是SetWindowRgn阻塞?

时间:2015-08-10 13:03:15

标签: c++ windows winapi msdn showwindow

我有一个可以全屏播放的用户界面。 当我进入全屏时,我正在调用以下序列:

ShowWindow(hwnd, SW_HIDE);
SetWindowRgn(hwnd, NULL, TRUE);
SetWindowPos(hwnd, 0, left, top, right, bottom, SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOZORDER)) ;
ShowWindow(hwnd, SW_SHOW);

我遇到一个错误,即窗口首先显示在左上角,具有之前的尺寸,然后才会进入全屏尺寸。 我怀疑这可能是因为SetWindowRgn()调用是异步的。并且实际上在ShowWindow()之后执行。 我从文档中知道所有其他调用都是阻塞的,但是,SetWindowRgn()是否阻止是否有阻止。 我怎么能确定它?感谢。

1 个答案:

答案 0 :(得分:1)

  

SetWindowRgn是否阻止?

是。像在问题中的代码中调用的所有函数一样,此函数是同步的。