質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
AutoHotkey

AutoHotkeyは、Windowsでの連続した操作をショートカットキー(ホットキー)として自動化設定できるソフトウェアです。さまざまなコマンドが用意され、GUIのプログラム作成もできます。

Q&A

1回答

283閲覧

AutoHotKeyでWindowsキーと数字キーの組み合わせ操作をスペースキーと数字キーの組み合わせで代用する方法につきまして

naiasin

総合スコア0

AutoHotkey

AutoHotkeyは、Windowsでの連続した操作をショートカットキー(ホットキー)として自動化設定できるソフトウェアです。さまざまなコマンドが用意され、GUIのプログラム作成もできます。

0グッド

0クリップ

投稿2022/05/14 11:59

前提

AutoHotKeyを使用して、
Windowsキーと数字キーの組み合わせ挙動を
スペースキーと数字キーの組み合わせで
代用するように、例えば

AutoHotKeyスクリプト

1Space & 4::send, #4

のように記載してみたのですが、

  1. スペースキーを押す
  2. 4キーを押す
  3. 4キーを離す
  4. 4キーを押す
  5. 4キーを離す
  6. スペースキーを離す

と操作しても
タスクバーの1番目のアプリケーションの
ウインドウが複数起動している場合、
一瞬だけ表示候補が表示されたり、
表示された場合でも再度数字キーを押して話しても切り替わったりと
うまく動作しませんでした。

質問

通常の挙動と同様に、スペースキーを押している間に
数字キーを押して離す度にウィンドウの表示候補を切り替えたいですが、
どのようにしたら良いでしょうか?

補足

AutoHotKeyのアイコンをダブルクリックして表示されるウィンドウを使って
通常通りwindowsキーと4キーを使用した場合

5B 15B d 40.70 LWin
34 005 d 0.20 4
34 005 u 0.11 4
34 005 d 0.48 4
34 005 u 0.11 4
5B 15B u 0.34 LWin

と表示されましたので、このイベントが送信されるように変換できれば
うまく動作させられそうと考えています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

スペースキーの挙動を変えないと,欲しい挙動は実現しないのではないでしょうか?

Windowsキーの挙動は

  • Windowsキーを押しながらキー → そのショートカットの挙動
  • Windowsキー押して離した時 → Windowsメニュー表示

なので,スペースキーもそのような挙動にする必要があります。

ここでは,

  • スペースキーを押している時のフラグ
  • スペースキーを押してマクロを実行中のフラグ

の二つを用意した時の実装例を次に示します。

AutoHotKey

1#InstallKeybdHook 2#UseHook 3 4; スペースが押されているフラグ 5; 0: 押されていない 6; 1: 押されている 7spc_pressed=0 8; コンビキー動作中フラグ 9; (スペース離した時に空白を挿入しないため) 10; 1: スペースマクロ実行中 11; 0: 実行していない 12conbi_doing=0 13 14; スペースが押された時 15Space:: 16spc_pressed=1 17Return 18 19; スペースが離された時 20Space Up:: 21spc_pressed=0 22if (conbi_doing == 0) 23{ 24 Send {Space} 25} 26Else 27{ 28 conbi_doing = 0 29} 30Return 31 32 33; 4が押された時 344:: 35If (spc_pressed == 1) 36{ 37 conbi_doing = 1 38 Send #4 39} 40Else 41{ 42 Send 4 43} 44Return

投稿2022/06/01 11:12

ujimushi_sradjp

総合スコア2091

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

naiasin

2022/06/02 01:00

ご回答いただきまして誠にありがとうございます。 ご提示いただきましたスクリプトを実行してみたのですが、 最初にご報告させていただいたものと同じような挙動になってしまいました。 AutoHotKeyのアイコンをダブルクリックして表示されるウィンドウを使って 確認してみましたところ、 --- 5B 15B i d 0.00 LWin 34 005 i d 0.00 4 34 005 i u 0.00 4 5B 15B i u 0.02 LWin 34 005 s u 0.11 4 34 005 h d 2.09 4 5B 15B i d 0.00 LWin 34 005 i d 0.00 4 34 005 i u 0.02 4 5B 15B i u 0.01 LWin --- のように、windowsキーを押しながら4キーの押下を繰り返す度に windowsキーの押下も同時に行われてしまっているようでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問