次のAutoHotKeyコードを使用して、AdobeReaderで[ページに移動]ダイアログを表示しました。
SetTitleMatchMode, 2
#ifWinActive Adobe Reader
p:: Send ^+n
#ifWinActive
問題はP、検索テキストボックスにキーを入力できないことです。入力中にそのショートカットを無効にするにはどうすればよいですか?
次のAutoHotKeyコードを使用して、AdobeReaderで[ページに移動]ダイアログを表示しました。
SetTitleMatchMode, 2
#ifWinActive Adobe Reader
p:: Send ^+n
#ifWinActive
問題はP、検索テキストボックスにキーを入力できないことです。入力中にそのショートカットを無効にするにはどうすればよいですか?
これにより、Acrobat Readerでpを押して、次のページにジャンプできます。^ fを押して検索する場合p、Enterキーを押すまで、を押すとapが送信されます。これにより、押すp動作が再び^Nの送信に戻ります。
SetTitleMatchMode, 2 ; Put this line in the beginning of your script to allow flexible searching in the window title.
#ifWinActive Adobe Reader ; The following lines ONLY work inside Acrobat Reader.
~^f::ARSearchActive = 1 ; Let ^f go through to the O/S and set a variable.
~Enter::ARSearchActive = 0 ; Let Enter go through to the O/S and reset the variable.
p:: ; Action to do when p is pressed
If (ARSearchActive = 1) ; This is true AFTER you pressed ^f.
Send, p ; If search has been activated, just send p
else ; This is true after you pressed Enter.
Send, ^+n ; If search is not activated, send ^N
Return
#ifWinActive ; End of Adobe Reader specific portion.
Foxitを使用しているため、これをAcrobat Readerでテストしていませんが、Notepadでテストしたところ、期待どおりに機能しました。
Ctrlこれは、 +Fを使用して検索ボックスを開き、テキストを入力し、Enter キーを押して終了するというコメントに基づいています。
OPのコメントに基づいてコードを編集しました:
SetTitleMatchMode, 2
mode := "hotkey_mode"
#If, WinActive("Adobe Reader") && mode = "hotkey_mode"
p:: Send ^+n
~^f::
Hotkey If, WinActive("Adobe Reader") && mode = "hotkey_mode"
Hotkey p, off
return
~Enter::
~Esc::
Hotkey IfWinActive, Adobe Reader
Hotkey p, on
return
^t::mode := "typing_mode"
#If, WinActive("Adobe Reader") && mode = "typing_mode"
^t::mode := "hotkey_mode"
#If
検索ダイアログを終了するために使用する可能性があるためESC、 と同じことを行うホットキーを追加しました。さらに、私のバージョンの Adobe Reader では、押すと [次を検索]のショートカットとしても使用されるため、私であれば、ホットキーを無効にして、検索ダイアログをエスケープするためだけに使用します。EnterESCEnterEnterESC
最後に、一般的なヒント: 通常、これらのような複雑さを回避するよりも、Ctrl+のようなホットキーを使用する方が簡単です。実際、 +がトリガーする印刷コマンドを使用しない場合は、ホットキーの代わりに+を使用することを検討してください。メニュー)PpCtrlPCtrlPp