使用键盘移动窗口…更快吗?


8

我喜欢使用键盘快捷键,因为它更快,因为它不会强迫我将手从键盘上移开。

在Windows中,我可以使用它们在桌面上移动窗口:

  1. Alt+ Space打开公共窗口菜单
  2. 按下M以选择“移动”命令
  3. 通过光标键浏览窗口位置
  4. 确认新职位 Enter

此外,为了获得更高的准确性,我可以Ctrl在导航时按住。

现在的问题是,移动时正常的“步距”约为20像素,而我的桌面也很大,因此“步行”到整个过程都需要很长时间。这种做法破坏了将键盘用于这些任务的目的。

是否可以更改此步骤的大小,以便以更少的步骤行走相同的距离?(我想象Windows注册表中的隐藏设置...?)

Alt在导航时尝试握住,但似乎对速度没有影响。


对此不了解Ctrl修饰符!但是无论如何,我通常仅在没有鼠标或窗口因某种原因而消失在屏幕外时使用。我发现用鼠标移动窗口更容易,更快捷。我使用的是Win + Left / Right箭头(用于最大化屏幕左侧和右侧的窗口)和Win + Shift + Left / Right箭头以在监视器之间移动窗口:)
Svish 2012年

Answers:


2

如果您想完全将窗口化范例重新构造为动态平铺,请考虑使用一个名为“ bug.n ” 的AutoHotkey脚本。如果您更喜欢通过键盘操作窗口,就会喜欢上它。


谢谢!看起来不错,我一定会尝试的。但是,就目前而言,我不确定如何使用当前的“ Laurel-Hardy”:D监视器设置(左侧经典4:3,右侧9:16)
Alois Mahdal

该范例本身在任何监视器配置中都可以很好地工作,但是我没有使用Windows(带有bug.n),所以我不确定多显示器设置。
nperson325681 2012年

1

像您一样使用键盘进行移动非常精确,但是很繁琐。

如果通常将窗口移至特定位置和大小,请尝试GridMove。您可以定义自己的网格(窗口位置和大小),也可以使用预定义的网格。这些中的每一个都称为图块。之后,您可以按Win + 2来捕捉任何活动窗口,其中2是您要捕捉到的图块编号。按Win + G以查看当前网格中的图块及其编号。


0

在Windows 7上,您可以使用Windows键+箭头键来移动窗口。

我不确定一次可以移动多少像素,但超过20像素。


就像Svish提到的那样,这些用于最大化Windows和在Windows之间移动。我确实经常使用它们,但是如果我需要随意布置多个较小的窗口,它们将无济于事,这在编码时我会做很多事情(例如,我在多个较小的窗口中放了笔记,测试以及类似的东西和代码在一个或多个大窗户中,不断窥视小窗户的艺术品)。
阿洛瓦·马哈德

Windows键+向上或向下将最大化或最小化窗口,但是向左/向右将在屏幕上快速移动它们。
亚当·汤普森

Win + Left / Right是捕捉功能,它将窗口捕捉到屏幕的左半部分或右半部分,并且与像素
无关

0

话题还不多,但我觉得它仍然有意义,值得分享。

我使用了很久以前发现的AutoHotKey“ KDEStyle”脚本,并为此进行了改进以改进鼠标的使用。

  • Win + Left Click
    • 允许您通过单击窗口中的任意位置来移动窗口。
  • Win + Right Click
    • 允许您使用最近的角调整窗口的大小-再次单击窗口中的任何位置

这大大降低了所需的精度,我认为这使得使用鼠标更容易,更快捷。

#LButton::
    MouseGetPos,KDE_X1,KDE_Y1,KDE_id
    WinGet,KDE_Win,MinMax,ahk_id %KDE_id%
    if KDE_Win
        return
    WinGetPos,KDE_WinX1,KDE_WinY1,,,ahk_id %KDE_id%
    loop {
        GetKeyState,KDE_Button,LButton,P
        if KDE_Button = U
            break
        MouseGetPos,KDE_X2,KDE_Y2
        KDE_X2 -= KDE_X1
        KDE_Y2 -= KDE_Y1
        KDE_WinX2 := (KDE_WinX1 + KDE_X2)
        KDE_WinY2 := (KDE_WinY1 + KDE_Y2)
        WinMove,ahk_id %KDE_id%,,%KDE_WinX2%,%KDE_WinY2%
    }
    return

#RButton::
    MouseGetPos,KDE_X1,KDE_Y1,KDE_id
    WinGet,KDE_Win,MinMax,ahk_id %KDE_id%
    if KDE_Win
        return
    WinGetPos,KDE_WinX1,KDE_WinY1,KDE_WinW,KDE_WinH,ahk_id %KDE_id%
    if (KDE_X1 < KDE_WinX1 + KDE_WinW / 2) {
        KDE_WinLeft := 1
    } else {
        KDE_WinLeft := -1
    }
    if (KDE_Y1 < KDE_WinY1 + KDE_WinH / 2) {
        KDE_WinUp := 1
    } else {
        KDE_WinUp := -1
    }
    loop {
        GetKeyState,KDE_Button,RButton,P
        if KDE_Button = U
            break
        MouseGetPos,KDE_X2,KDE_Y2
        WinGetPos,KDE_WinX1,KDE_WinY1,KDE_WinW,KDE_WinH,ahk_id %KDE_id%
        KDE_X2 -= KDE_X1
        KDE_Y2 -= KDE_Y1
        WinMove,ahk_id %KDE_id%,, KDE_WinX1 + (KDE_WinLeft+1)/2*KDE_X2
                                , KDE_WinY1 +   (KDE_WinUp+1)/2*KDE_Y2
                                , KDE_WinW  -     KDE_WinLeft  *KDE_X2
                                , KDE_WinH  -       KDE_WinUp  *KDE_Y2
        KDE_X1 := (KDE_X2 + KDE_X1)
        KDE_Y1 := (KDE_Y2 + KDE_Y1)
    }
    return

然后,使用标准Windows键盘组合对此进行补充,并可以:

  • Win+ Up/Down
    • 最大化/还原/最小化
  • Win+ Left/Right
    • 调整到屏幕的左/右一半
  • Win+ Shift+ Left/Right
    • 左右移动一台显示器
  • 等等...
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.