![需要一个全屏运行 Windows 应用程序的解决方案](https://linux22.com/image/1570532/%E9%9C%80%E8%A6%81%E4%B8%80%E4%B8%AA%E5%85%A8%E5%B1%8F%E8%BF%90%E8%A1%8C%20Windows%20%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E7%9A%84%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88.png)
我正在 Windows 10 中设置 HTPC,我希望我的所有 UWP 应用(Netflix、Hulu、Store 等)都全屏运行(不是最大化...我想要真正的全屏)。我知道我可以使用平板电脑模式来实现这一点,但只要关闭任何东西,屏幕就会默认回到“开始”屏幕,而不是我的媒体程序。
我也知道可以在桌面模式下按Win+ Shift+Enter强制全屏,但我希望自动执行此操作。
我想到过
- 使用 autohotkey 在桌面模式下帮我按下按钮
- 编辑注册表以强制全屏(似乎有点激烈)
但我不清楚如何解决这些问题,希望能得到一些帮助或其他方法
任何建议都将不胜感激
答案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 描述与它们在此脚本中的用法相对应: