回答:
WinSplit Revolutionをご覧ください。必要なものが揃っており、カスタマイズ可能です。
ここでは、Windows +矢印キーが非常に便利です。
これは正確にセンタリングするためのものではありませんが、ウィンドウを簡単に左右に(および上下に)移動できます。
AutoHotkeyを使用することをお勧めします。
あなたがしたことを正確にするスクリプトの例はすでに別の質問への回答で提供されました。
スクリプトのコードは次のとおりです。
#!Up::CenterActiveWindow() ; if win+alt+↑ is pressed
CenterActiveWindow()
{
; Get the window handle from de active window.
winHandle := WinExist("A")
VarSetCapacity(monitorInfo, 40)
NumPut(40, monitorInfo)
; Get the current monitor from the active window handle.
monitorHandle := DllCall("MonitorFromWindow", "uint", winHandle, "uint", 0x2)
DllCall("GetMonitorInfo", "uint", monitorHandle, "uint", &monitorInfo)
; Get WorkArea bounding coordinates of the current monitor.
A_Left := NumGet(monitorInfo, 20, "Int")
A_Top := NumGet(monitorInfo, 24, "Int")
A_Right := NumGet(monitorInfo, 28, "Int")
A_Bottom := NumGet(monitorInfo, 32, "Int")
; Calculate window coordinates.
winW := (A_Right - A_Left) * 0.5 ; Change the factor here to your desired width.
winH := A_Bottom
winX := A_Left + (winW / 2)
winY := A_Top
WinMove, A,, winX, winY, winW, winH
}
ウィンドウの下部がタスクバーの下に入らないように微調整しwindowWidth
、0.7から0.5に変更しました。
編集:複数のモニターで動作するようになり、上部と下部の値に作業領域を使用します。
ちなみに、WinSplit Revolutionは廃止され、MaxToという有料アプリに置き換えられました。
AutoHotkeyは非常に強力であり、さらに多くのユースケースに対応していることに加えて、無料でオープンソースです。
Sizer by Brianアプリをお試しください。無料で完全にカスタマイズ可能です。 http://www.brianapps.net/sizer.html