2

アプリが最小化されている場合でも、(構成可能な) グローバル キーボード イベントをリッスンできる機能を AIR アプリに追加しようとしています。例: CTRL-ALT-SHIFT-F12 でスクリーンショットを取得します。

キーボード フックを登録する方法が見つかりません。キーボード イベントをリッスンしても、アプリにフォーカスがある場合にのみキャプチャされます。提案?

4

5 に答える 5

1

ステージの KeyboardEvent にフックしてみてください:

stage.addEventListener(KeyboardEvent.KEY_DOWN,KeyHandler);  

function KeyHandler(e:KeyboardEvent){
    trace ("Key Code: " + e.keyCode);  
    trace ("Control? " + e.ctrlKey);  
    trace ("Shift? " + e.shiftKey);  
    trace ("Alt? " + e.altKey);  
}
于 2008-12-19T16:12:29.220 に答える
1

NativeProcess を使用すると、グローバル キーボード イベントをリッスンして AIR アプリに送り返す外部アプリを非常に簡単に作成できます。私は今、この道を進んでいるかもしれません...

于 2010-08-06T17:01:16.133 に答える
0

Air アプリケーションを Flash CS5 でテストしていますが、独自のショートカットをテストできるようにキーボード ショートカットを無効にする必要があります。ctrl-F は機能しますが、ctrl-C は機能しません。

テストしている標準の AS3 ファイルの場合、キーボード ショートカットが機能することに気付きました。

于 2010-08-12T03:22:50.860 に答える
0

私が使用する 1 つの方法は、AIR アプリでクリップボードを監視することです。これは、コピーされたデータに基づいて反応することしかできませんが、少なくとも、アプリにフォーカスがないときに入力をリッスンする方法の一種です。

于 2011-08-04T04:50:32.807 に答える