Python - Windows - 将程序保持在另一个全屏应用程序之上

Posted

技术标签:

【中文标题】Python - Windows - 将程序保持在另一个全屏应用程序之上【英文标题】:Python - Windows - Keep Program On Top Of Another Full Screen Application 【发布时间】:2013-06-12 11:34:39 【问题描述】:

是否可以让我的程序运行以使其始终处于顶部。即使在运行全屏应用程序(例如游戏或视频)时?

【问题讨论】:

什么样的程序?您使用的是 GUI 工具包,还是只是指在 Windows 命令行中运行的程序? 【参考方案1】:

您可以使用SetWindowPos 使您的窗口位于最顶层,但是任何在您的窗口之后要求置顶的程序都会得到它,并在您的窗口上绘制。

不可能创建一个总是在所有其他窗口之上的窗口。 Raymond Chen 在他的文章How do I create a topmost window that is never covered by other topmost windows? 中写道,

我们已经知道您无法创建始终位于顶部的窗口, 即使存在其他标记为始终在顶部的窗口。一个 应用“如果两个程序这样做会怎样?”规则演示 这是不可能的,因为无论你使用什么技巧 on-top-of-always-on-top,另一个程序可以使用相同的技巧,并且 现在你有两个 on-top-of-always-on-top 窗口,会发生什么?

不过,希望渺茫。他接着写,

唯一明智的出路是让程序合作确定 谁在任何特定时间控制屏幕。

实际上,这可以通过以下几种方式实现:

致电游戏程序和视频程序的开发人员,并要求他们将代码添加到他们的系统中,以检查您的窗口是否存在,如果存在则不要占用最顶层的属性。 做游戏程序和视频程序的开发者,自己添加校验码。 成为所有这些程序运行的操作系统的创建者,并为您的程序提供独家优惠的“超级***”待遇。

【讨论】:

以上是关于Python - Windows - 将程序保持在另一个全屏应用程序之上的主要内容,如果未能解决你的问题,请参考以下文章

使终端保持焦点

如何让您的 Windows Phone 7.5 应用程序保持领先

与程序保持一致的 Python 数据库

在 Windows 8 中保持推送通知通道

Python、cx_freeze 和 Windows 控制台

Python GUI 窗口在没有焦点的情况下保持在顶部