2

StrokesPlus ( SendKeysを使用するマウスジェスチャー)を使用して、ウィンドウを閉じるための次のショートカットを使用しています。

acSendKeys("{DELAY=50}^{F_4}")

デフォルトの閉じるウィンドウはcontrol+wですが、すべてのプログラムがそれを受け入れるわけではありません(たとえば、UltraEditはcontrol + F4-を使用し、control + wはワードラップを切り替えます。これは私がよく使用します)。

また、FlorianWinkelbauerの4Clipを使用しています。これは、F1-F4をクリップボードにバインドするため、最初のクリップボードへのコピー/貼り付けにはF1 + c、F1+vなどが使用されます。4clipのバインディングのサンプルを以下に示します。

*F1::SendInput {blind}{F1}
*F2::SendInput {blind}{F2}
*F3::SendInput {blind}{F3}
*F4::SendInput {blind}{F4}

; F3 + F$
F3 & F4::
    Gosub SetDelimiter
return

; F4
F4 & c::CopyClipboard(4)
F4 & a::AppendClipboard(4)
F4 & s::SwapClipboard(4)
F4 & p::PrintClipboard(4)
F4 & v::PasteClipboard(c4)
F4 & b::PasteClipboard(cp4)
F4 & d::Clear(4)

私が見つけた問題は、StrokesPlusショートカットを使用するとウィンドウが閉じても、コントロールキーがまだ押されているかのようにシステムが残っていることです。Escキーを押すとスタートメニューが表示されます(control +を押したときと同じように)逃れる)。

これをWindows764ビットとWindowsXP64ビットの両方で複製しました。

4クリップですべてのF4バインディングをコメントアウトすると、問題が解決することを確認しました。

StrokesPlusフォーラムAutohotkeyフォーラムにも投稿しました。

4

2 に答える 2

2

StrokesPlusフォーラムへの私の投稿への返信でRobStrokesPlusの作者)によって解決されました。

acSendControlDown()
acSendKeys("{F_4}")
acSendControlUp()

デフォルトの代わりに、StrokesPlusで上記を使用します。

acSendKeys( "{DELAY = 50} ^ {F_4}")

于 2012-08-13T23:58:19.493 に答える
1

これは、キーがデフォルトでCtrl「キーを無視」として使用されているためです。つまり、キーを押すと、すべてのマウスジェスチャーが一時的に無効になります。StrokesPlusCtrl

この機能を使用しない場合は、[設定]に移動して、[キーを無視]を[なし]に設定できます。Ctrlその後、通常どおりスクリプトにキーを書き込むことができます。

于 2020-02-01T05:05:14.170 に答える