SetForegroundWindow函数将创建指定的窗口,并激活到前台窗口的线程 。键盘输入窗口,并为用户更改不同的视觉线索。该系统分配一个优先略高前景的窗口,比它其他线程创建的线程。使用条件:Windows 2000/XP下没有菜单处于活动状态。这一变化,应用程序不能强制一个窗口到前台,而用户是另一个窗口的工作。
我在窗口A工作,因为特殊原因另外一个窗口B需要调用SetForegroundWindow之后才能在窗口B中进行某些后台模拟按键操作。调用SetForegroundWindow之后,直接把窗口B调到前台了。我WIN7系统安装了Windows NT 5.0,根据SetForegroundWindow函数的说明,当用户在另一个窗口中工作时,应用程序不能强行设置一个窗口到前台。相反,SetForeground函数将会激活窗口并且调用FlashWindowEx函数通知用户。
不希望WIN7系统系统的C++下的SetForegroundWindow 抢占用户窗口焦点并弹到前台,希望恢复SetForegroundWindow的原始功能,即当用户在另一个窗口中工作时,应用程序不能强行设置一个窗口到前台。相反,SetForeground函数将会激活窗口并且调用FlashWindowEx函数通知用户。