用于将窗口移动到另一个屏幕的键盘快捷键

Modified on: Sat, 16 Mar 2019 02:20:02 +0800

使用两个(或多个屏幕)时,常见问题是启动的应用程序出现在“错误”屏幕上。从命令行启动文本编辑器时,我特别觉得这很烦人,因为我必须用右手离开主行,以便在我继续输入之前将窗口拖到“右”屏幕。

是否可以定义一个键盘快捷键,将当前应用程序移动到另一个/下一个屏幕?

编辑:我使用的是Windows XP,但很高兴知道该功能已存在于Windows 7中。

Edit2:我选择了autohotkey脚本。这种改编对我有用:

#q:: WinGetPos, winx, winy,,, A WinGet, mm, MinMax, A WinRestore, A If (winx > 1270) { newx := winx-1270 OutputDebug, Moving left from %winx% to %newx% } else { newx := winx+1270 OutputDebug, Moving right from %winx% to %newx% } WinMove, A,, newx, winy if mm=1 WinMaximize, A Return

我必须使用OutputDebug语句并dbgview发现适当的阈值1270左移或右移。将最大化窗口向左移动时,确切的阈值尤为重要。

最佳答案

AutoHotkey的!在winkey(#)和q上,这将在监视器之间移动(两个1680x1050监视器,在Loop,设置为每个监视器的屏幕分辨率/ 10,如果你不同)。
控制是^,alt是!,shift是+,字母是字母。您也可以使用修饰符的组合。

#z:: ;Move the active window to the other monitor.
WinGetPos, winx, winy,,, A
WinGet, oldWin,ID,A
WinActivate, A
WinGet, mm, MinMax, A
WinRestore, A
If winx+5 >= 0 then
    mult=1
else
    mult=-1
WinMove,A,, winx-(1680*mult), winy
if mm=1
    WinMaximize, A
Return
作者:,Phoshi

相关问答

添加新评论