Win+Shift+Down 无法撤消垂直最大化

Win+Shift+Down 无法撤消垂直最大化

Win++在垂直方向上最大化活动窗口,同时保持其宽度不变。Shift++用于执行相反的操作,即恢复以前的垂直尺寸。Up
WinShiftDown

后者在 Windows 10 20H2 中停止工作(可能早在 2004 年就停止工作了)。相反,++Win现在总是像+一样最小化窗口,就像忽略修饰符一样。我在几个独立的安装中以及在安全模式下对此进行了测试。ShiftDownWinDownShift

编辑:我也用 Spy++ 检查过了。关键消息会转到相应的活动窗口(如预期的那样),除了VK_DOWN没有出现。而是收到了一个WM_SYSCOMMANDSC_MINIMIZE没有WM_HOTKEY消息。

有什么方法可以恢复以前的行为吗?
是否有其他键盘快捷键可以撤消垂直最大化?

答案1

您无需依赖 Windows 来实现升级一致性,而是可以使用免费的自动热键 创建您自己的热键。

以下脚本实现您的热键:

sysget, SM_CYMAXIMIZED, 62                  ; Get maximised window size
sysget, SM_CYEDGE, 46                       ; Get 3D border size
return
; maximize vertically
#+Up::
WinGetClass, class, A
WinGetPos, X, Y, W, H, A
WinMove, ahk_class %class%, , (X), (0-(SM_CYEDGE*2)), (W), (SM_CYMAXIMIZED)
return
; un-maximize
#+Down::
WinMove, ahk_class %class%, , (X), (Y), (W), (H)
return

安装 AutoHotKey 后,将上述文本放入一个.ahk文件中并双击进行测试。您可以通过右键单击托盘栏中的绿色 H 图标并选择退出来停止脚本。要让它在登录时运行,请将其放在 的启动组中 C:\Users\USER-NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

上述脚本的一个小问题是,如果您最大化一个活动窗口,然后激活另一个窗口并按下取消最大化热键,这会将第二个窗口的大小调整为第一个窗口的旧高度。如果这是一个问题,可以改进脚本。

相关内容