正文

激活另一个进程的窗口(转载)2010-04-05 22:10:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/yuqiexing/50894.html

分享到:

问题: 我要在我的系统(假如当前窗口是A)里面用vba   的方法打开word的窗口(B窗口),但是打开后发现Word窗口不是活动的,A窗口依然是活动窗口,但是发现B窗口已经在任务栏上打开了,有时候即使能显示B窗口,但是你只要按键盘,发现活动窗口立即转到了A窗口上,让我无可奈何。          于是我通过FindWindow的方法来获取当前打开的B窗口的句柄(能够正确获取到),但是后面无论用SetActiveWindow、SetFocus、ShowWindow等方法来设置把B窗口设置为活动窗口,但是没有一个能行的,请大家教教我。   解答: 光找到WORD的主窗口不行,还要处理其子窗口。可以这样做:         CWnd   *pMainWnd,*pSubWnd;     pMainWnd=CWnd::FindWindow(_T("WORD窗口类型"),"WORD窗口名");      if   (pMainWnd)     {             pSubWnd=pMainWnd->GetLastActivePopup();         pMainWnd->ShowWindow(SW_SHOW);         pSubWnd->SetForegroundWindow();      }   

阅读(7041) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册