在 Win10 中是否有任何热键可以将窗口的角落与屏幕的角落对齐?

在 Win10 中是否有任何热键可以将窗口的角落与屏幕的角落对齐?

在 Win10 中是否有任何热键可以将窗口的角落与屏幕的角落对齐?我正在使用带有屏幕捕获的图像识别,并且我希望对象在每次启动时都完全位于同一位置。

答案1

您可以尝试WINDOWS + LEFT,然后是WINDOWS + UP。这将使窗口与屏幕左上角对齐。您可以使用WINDOWS + RIGHT而不是WINDOWS + LEFT将窗口与屏幕右上角对齐。

PS 您实际上不必在快捷方式之间放开 WINDOWS 键,但是您必须放开箭头键。

答案2

你可能想考虑看看自动热键。AutoHotkey 是一个实用程序,允许您为 Windows 中的各种操作定义自定义热键。

例如,下面是一个示例脚本,它可以通过+将当前活动(聚焦)窗口移动到屏幕左上角,而无需最大化它(与Win+不同):CtrlF4

例如 upper_left.ahk

^F4:: WinMove, A, , 0, 0

只需将上述命令保存在带有.ahk扩展名的普通文本文件中即可。安装 AutoHotkey 后,您应该能够双击此文件以启用指定的热键和操作。

命令分解

  • ^F4- 热键Ctrl+ F4。您可以(可能)使用任何您想要的热键。
  • A- 要移动的窗口标题。A是当前活动(聚焦)窗口。请注意,如果需要,有多种方法可以指定特定窗口。
  • , ,- 空白占位符,用于通过窗口文本识别窗口(此命令中未使用)。
  • 0, 0- 窗口要移动到的 X 和 Y 屏幕坐标。您也可以指定自己的屏幕坐标。

覆盖Win+

如前所述,您可以使用几乎任何您喜欢的热键。因此,假设您不想使用Win+的“最大化”功能,您可以用来覆盖它:#Up^F4

例如 win_up_upper_left.ahk

; Override Win + Up Arrow (which normally maximizes a window)
#Up:: WinMove, A, , 0, 0

请注意,在 AutoHotkey 中,以 开头的任何行都;被视为注释,并且会被忽略。


其他角和中心

如果要将窗口定位到屏幕的其他角落,可以使用其他命令。如果愿意,甚至可以将窗口置于中央。

具体来说,您可以使用GetWinPos来发现窗口的宽度和高度,然后结合和A_ScreenWidthA_ScreenHeight屏幕宽度和高度,由 AutoHotkey 确定)使用这些值来正确定位窗口。

下面的示例脚本演示了如何创建热键(Ctrl+ F4F8),将当前活动(聚焦)窗口移动到屏幕的四个角落,并使其居中:

例如 four_corners_and_centering.ahk

; The default Windows 10 Taskbar Height (40 pixels) plus the approximate
; default window bottom border (decoration) thickness (~15 pixels).
Taskbar := 55

; Upper Left
^F4:: WinMove, A, , 0, 0

; Upper Right
^F5::
    WinGetPos, , , Width, Height, A
    WinMove, A, , (A_ScreenWidth - Width), 0
    Return

; Lower Left (No Taskbar)
^F6::
    WinGetPos, , , Width, Height, A
    WinMove, A, , 0, (A_ScreenHeight - Height)
    Return

; Lower Left (With Taskbar)
; ^F6::
    ; WinGetPos, , , Width, Height, A
    ; WinMove, A, , 0, (A_ScreenHeight - Height - Taskbar)
    ; Return

; Lower Right (No Taskbar)
^F7::
    WinGetPos, , , Width, Height, A
    WinMove, A, , (A_ScreenWidth - Width), (A_ScreenHeight - Height)
    Return

; Lower Right (With Taskbar)
; ^F7::
    ; WinGetPos, , , Width, Height, A
    ; WinMove, A, , (A_ScreenWidth - Width), (A_ScreenHeight - Height - Taskbar)
    ; Return

; Center the active window in the middle of the screen.
^F8::
    WinGetPos, , , Width, Height, A
    WinMove, A, , (A_ScreenWidth/2)-(Width/2), (A_ScreenHeight/2)-(Height/2)
    Return

AutoHotkey 参考

相关内容