(AutoHotkey)(Win + Ctrl で マウスカーソルが指しているウインドウを移動開始する 編)
こういうのを作っていると やっぱり 自分はせっかちなんだな と しみじみと思ってしまう 笑)
動かしたい ウインドウに マウスカーソルを合わせて ホットキーを押せば 移動開始、 ドラッグする必要もありません、マウスを動かすだけでOK
あとは マウスで 位置を調整してあげて 左クリックで 確定です
動かしたい ウインドウに マウスカーソルを合わせて ホットキーを押せば 移動開始、 ドラッグする必要もありません、マウスを動かすだけでOK
あとは マウスで 位置を調整してあげて 左クリックで 確定です
[]; 定数の値[] []NULL := 0x0000[] []WM_SYSCOMMAND := 0x0112[] []SC_MOVE := 0xf010[] []<#LCtrl::[] []; マウスカーソルがあるウインドウのハンドルを取得[] [] MouseGetPos, , , hWindow[] []; デスクトップは移動できないというか 意味が無いので除外[] [] if ( WinExist("ahk_class Progman") == hWindow )[] [] Return[] []; マウスカーソルがあるウインドウを アクティブにする[] [] WinActivate, ahk_id %hWindow%[] []; 今回は 即座に次の処理に移る PostMessageを使います[] []; SC_MOVE を 送って システムメニューの「移動(M)」を選んだことにします[] [] DllCall("user32.dll\PostMessage", "Int", hWindow, "Int", WM_SYSCOMMAND, "Int", SC_MOVE, "Int", NULL)[] []; ウインドウが 「移動」状態になってから 一回以上 方向キーのどれかを押せば[] []; マウスによるドラッグなしの 位置調整ができるようになる[] [] Send, {Right}[] []Return[]