0
タスクバーのアイコンを右クリックして閉じるを選択するだけで、コンピュータのすべてのプログラムを閉じることができます。ですから、どのウィンドウでもXボタンをクリックすると、代わりに最小化する必要があります。どのようにAutoHotKeyを使ってこれを達成できますか?クローズボタンをキャッチして代わりにウィンドウを最小化することは可能ですか? AutoHotKey
タスクバーのアイコンを右クリックして閉じるを選択するだけで、コンピュータのすべてのプログラムを閉じることができます。ですから、どのウィンドウでもXボタンをクリックすると、代わりに最小化する必要があります。どのようにAutoHotKeyを使ってこれを達成できますか?クローズボタンをキャッチして代わりにウィンドウを最小化することは可能ですか? AutoHotKey
-
;tested on Windows 7
;note: may not work correctly if aero mode is on
;note: some programs don't return the standard NCHITTEST value for a close button,
;a workaround is to compare the cursor position against the window coordinates
LButton::
CoordMode, Mouse, Screen
MouseGetPos, vPosX, vPosY, hWnd
WinGetClass, vWinClass, ahk_id %hWnd%
if vWinClass not in BaseBar,#32768,Shell_TrayWnd,WorkerW,Progman,DV2ControlHost
{
SendMessage, 0x84, 0, vPosX|(vPosY<<16), , ahk_id %hWnd% ;WM_NCHITTEST
vNCHITTEST := ErrorLevel ;(8 min, 9 max, 20 close)
;ToolTip %vNCHITTEST%
if (vNCHITTEST = 20)
{
WinMinimize, ahk_id %hWnd%
Return
}
}
SendInput {LButton Down}
KeyWait, LButton
SendInput {LButton Up}
Return
https://blogs.msdn.microsoft.com/oldnewthing/20110218-00/?p=11453 – user2120666
私はdownvoteの理由を尋することはできません。スクリプトは必要に応じて正確に機能します。ダウンダウン者はスクリプトをテストして、うまくいかないことを述べてください。 – vafylec
あなたが投稿した記事を読む? WM_NCHITTESTの文書でも、「マウスがキャプチャされていなければ、メッセージはカーソルの下のウィンドウに送信されます。それ以外の場合は、マウスをキャプチャしたウィンドウにメッセージが送信されます」。 – user2120666