AutoHotkeyでAlt+Tabを制御する
もしAlt+Tabを使用時に何かしらのホットキーを追加したい場合や特定のウィンドウ時ではAlt+Tabを無効にしたい場合、それらはAutoHotkeyで制御できる。またAlt+Tabでタスクビューを表示するののではなく別のキーで実行したい場合もAutoHotkeyでは変更可能。
Alt+Tab使用時の制御
もしAlt+Tabがアクティブな状態で何かしらのホットキーを追加させたい場合WinActive("ahk_class XamlExplorerHostIslandWindow")を使うことでコントロールできる。例えばAlt+Tab使用時にウィンドウを閉じたい場合デフォルトではDeleteを押せば閉じることができる。これを別のキーに置き換える場合次のようにする。
#HotIf WinActive("ahk_class XamlExplorerHostIslandWindow")
BackSpace:: Delete
#HotIf
Alt+Tab時の制御はWinActive("ahk_class XamlExplorerHostIslandWindow")を使うことで制御可能。
Alt+Tabを別のキーに置き換える
例えば左のCtrlキーでタスクビューを呼び出し[と]で移動するショートカットを作りたい場合下記のようにする。
; Alt Tab
RCtrl::AltTab
#HotIf WinActive("ahk_class XamlExplorerHostIslandWindow")
RCtrl & [::ShiftAltTab
RCtrl & ]::AltTab
#HotIf
特定のウィンドウでAlt+Tabを無効化
特定のウィンドウだけAlt+Tabを無効化させたい場合Returnを使うことで無効化が可能。例えば下記のコードはFirefox上ではタスクビューが無効化されている。
; Firefox
#HotIf WinActive("ahk_exe firefox.exe")
^+N:: Send "^+P"
^+P:: Return
LAlt & Tab:: Return
#HotIf
WinActiveとは指定したウィンドウがアクティブであるかどうか調べるもの。そして対象のウィンドウの情報を調べたい場合Window spyを使うことでその対象のウィンドウ情報を調べることができる。
Window spyの呼び出し方は簡単でAutoHotkeyをインストールしたときにすでにインストールされているのでWindow spyと調べると出てくる。起動すると【Window Title, Class and Process】という項目から.exe情報をそのままコピーして上記のように埋め込むだけ。