需要一个全屏运行 Windows 应用程序的解决方案

需要一个全屏运行 Windows 应用程序的解决方案

我正在 Windows 10 中设置 HTPC,我希望我的所有 UWP 应用(Netflix、Hulu、Store 等)都全屏运行(不是最大化...我想要真正的全屏)。我知道我可以使用平板电脑模式来实现这一点,但只要关闭任何东西,屏幕就会默认回到“开始”屏幕,而不是我的媒体程序。

我也知道可以在桌面模式下按Win+ Shift+Enter强制全屏,但我希望自动执行此操作。

我想到过

  1. 使用 autohotkey 在桌面模式下帮我按下按钮
  2. 编辑注册表以强制全屏(似乎有点激烈)

但我不清楚如何解决这些问题,希望能得到一些帮助或其他方法

任何建议都将不胜感激

答案1

AutoHotkey 可以做到这一点。我建议下载它并运行默认脚本,它会在系统托盘中放置一个小 [H] 图标。从那里,您可以编辑默认脚本并添加自己的热键、快捷方式,或者在本例中,添加某种自动全屏脚本。

可以通过Send或发送 Win+Shift+Enter

SendInput, #+{Enter}  ; Send Win+Shift+Enter

使用附带的应用程序检测执行此操作的正确窗口相对简单Window Spy(它将作为托盘菜单上的右键单击选项提供),这将帮助您识别 WinTitle 参数的标题/类/exe 组件,以便在检查窗口是否存在或是否处于活动状态时使用。

但是,自动执行此发送操作意味着您还需要回答第二组问题。快捷键是否需要执行:

A)当窗口处于活动状态时是否持续? --> 否

B)对每个创建的唯一窗口句柄执行一次?(如果是这样,我们必须记录快捷键已发送到哪些窗口)

C)每次点击窗口时

看起来 B 可能是答案,但这取决于具体情况。如果您有两个显示器,并且单击应用程序会导致全屏禁用,那么如果每次窗口变为新活动时都需要重新启用全屏,那么 C 可能是答案。

项目 C 是最容易编写的,它使用一个循环来检查活动窗口,确定它自上次循环执行以来是否发生了变化,如果发生了变化,则发送击键。项目 B 需要额外的代码来在击键发送后保存窗口句柄,然后如果再次检测到同一窗口,则在后续循环迭代中将其排除在发送到该窗口之外。

如果需要,可以参阅此文章中的代码以供调整,上面的 A/B/C 描述与它们在此脚本中的用法相对应:

http://www.autohotkey.com/board/topic/84397-winwait-framework-do-something-to-a-window-when-it-appears/

相关内容