最近希望通过程序控制另外一个程序置于其他窗口的顶层,但是,又不是那种一直处于顶层的窗口,开始使用BringWindowToTop函数,结果不起作用,后来采用了SetWindowPos,来实现
//读取当前的主框架的style
DWORD dwStyle=::GetWindowLong(hWnd,GWL_EXSTYLE);
::SetWindowPos(hWnd,HWND_TOPMOST,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE);
//如果主框架原来已经被设置为topmost,则此处不重设,否则进行重设 2008-06-30 yych
if(!((dwStyle&WS_EX_TOPMOST)==WS_EX_TOPMOST ))
{
//保证主框架前置,然后再恢复到正常状态 2008-03-26 yych
SetWindowPos(hWnd,HWND_NOTOPMOST,0,0,0,0,SWP_NOSIZE|SWP_NOMOVE);
}