加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – SwitchToThisWindow将当前窗口发送到后面

发布时间:2020-12-14 02:30:33 所属栏目:Windows 来源:网络整理
导读:所以,是的,我发现自己处于一个可疑的位置,即实施 SwitchToThisWindow 呼叫迫使我的窗户到前方.我同意,它并不理想,但并不总是可以反对别人认为必要的产品“功能”. 现在,我认为SwitchToThisWindow胜过 AttachThreadInput 黑客进行强制窗口切换,因为它不太可能
所以,是的,我发现自己处于一个可疑的位置,即实施 SwitchToThisWindow呼叫迫使我的窗户到前方.我同意,它并不理想,但并不总是可以反对别人认为必要的产品“功能”.

现在,我认为SwitchToThisWindow胜过AttachThreadInput黑客进行强制窗口切换,因为它不太可能死锁,并且应该删除SwitchToThisWindow,或者停止运行我不会抱怨.

但是,SwitchToThisWindow除了在为fAltTab参数传递FALSE时将目标窗口置于顶部,并且如果传递TRUE时没有执行任何操作,则会将当前前景窗口推送到z顺序的底部,这会产生令人遗憾的副作用.

如何在不诉诸AttachThreadInput的情况下避免“将当前活动推送到z-bottom”行为?

或者,MS可以删除AttachThreadInput作为一个可行的解决方法,我可以告诉我的经理,实际上,不可能,实际上是不可能的.

解决方法

我不知道这是否有帮助,但我发现可靠地将窗口置于最高位置的唯一方法是进行以下2次调用:

ShowWindow(myhwnd,SW_MINIMIZE);
ShowWindow(myhwnd,SW_RESTORE);

显然,当您的窗口当前不是最顶层的窗口时,应该进行这些调用以避免闪烁.但是这也不应该具有将当前前窗置于z顺序底部的副作用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读