4

Windows で同じホーキー (Strg+Alt+X など) を使用してプログラム (メモ帳など) を開いたり閉じたりしようとしています。そのため、プログラムが閉じているときは「X」で開き、開いているときは「X」で閉じます。

これは、プログラムを開くためのホットキーとプログラムを閉じるためのホットキーの 2 つを使用して行うのが非常に簡単です。しかし、同じホットキーでこれに取り組む方法がわかりません。誰かが私を正しい方向に向けることができますか? 多分これはオートホットキーで可能ですか?

4

2 に答える 2

6

これがあなたが探しているものだと思います。StartClose他のアプリケーションのホットキーも作成したい場合は、将来使用するためのメソッドを作成しました。AutoHotkeyトレイアイコンを右クリックすると表示されるWindowSpyを使用して、ウィンドウのタイトルとクラスを見つけることができます。

x::StartClose("ahk_class Notepad", "notepad.exe")

StartClose(title, exe)
{
    IfWinExist, %title%
        WinClose
    else
    {
        Run, %exe%
        WinActivate
    }
}
于 2012-11-15T16:39:27.140 に答える
1

エリオットの答えは、正しい方向を示してくれました(私はAutoHotKey構文にまったく慣れていません)。彼のアプローチでは、システム トレイに最小化されないプログラムに適したウィンドウ タイトルを使用しています。しかし、そのようなプログラムがある場合は、プロセス ID に基づいてプログラムを閉じることをお勧めします。

^!x::StartClose("XMouseButtonControl.exe")

StartClose(exe)
{
Process, Exist, %exe% ; check to see if program is running
If (ErrorLevel = 0) ; If program is not running -> Run
    {
    Run, %exe%
    }
Else ; If program is running, ErrorLevel = process id for the target program -> Close
    {
    Process, Close, %ErrorLevel%
    }
}
于 2012-11-16T12:18:13.810 に答える