MFC 将指定的窗口激活并显示在桌面最前端,为什么我的没效果?

无论我的指定窗口是在正常显示的,还是最小化,或是最小化在托盘,都不行我的代码,如下:typedefvoid(WINAPI*PROCSWITCHTOTHISWINDOW)(... 无论我的指定窗口是在正常显示的,还是最小化,或是最小化在托盘,都不行
我的代码,如下:
typedef void (WINAPI *PROCSWITCHTOTHISWINDOW) (HWND, BOOL);
PROCSWITCHTOTHISWINDOW SwitchToThisWindow;
HMODULE hUser32 = GetModuleHandle("user32");
SwitchToThisWindow = ( PROCSWITCHTOTHISWINDOW)
GetProcAddress(hUser32, "SwitchToThisWindow");
SwitchToThisWindow(gethwnd, TRUE);
gethwnd就是我指定的那个应用程序的窗口句柄
展开
 我来答
jellycgl
2015-07-29 · TA获得超过417个赞
知道小有建树答主
回答量:1149
采纳率:66%
帮助的人:893万
展开全部
不是这个接口吧,SetWindowPos或者还有个Fource什么的接口可以实现窗口显示在最上层
追问
::SetWindowPos(gethwnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE   |SWP_NOSIZE);	

::SetForegroundWindow(gethwnd);
::SetActiveWindow(gethwnd);
::SetFocus(gethwnd);

我都试过了,还是没效果
追答
::SetWindowPos(gethwnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE   |SWP_NOSIZE);	
::SetForegroundWindow(gethwnd);
理论上是可以的,你可以看一下是不是其他的地方又设置了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式