キャプチャキーストロークにブラウザでFlexアプリケーションにフォーカスを与えます
-
22-09-2019 - |
質問
私は、ブラウザで実行さFlexでA 小さなビデオゲームを書きました。キーボードの矢印ボタンを押して、プレーヤーの動きは、私はそれらのキーストロークをキャプチャする必要があります。実際には、ゲームアクションの起動時にプレーヤーのプレスこれらの鍵の一つます。
キーストロークをキャプチャするためには、フラッシュ/ Flexアプリケーションだけでなく、ブラウザは、フォーカスを持っている必要があります。
どのように私は、アプリケーションがフォーカスを持っていることを確認することができますか?私はハックのビットを実装しました:Aはあなたがゲームを開始するためにクリックする必要があり、ボタンを「開始します」。このボタンの唯一のポイントは、アプリがフォーカスを持っていることを確認することです。よりよい解決策がこれにありますか?
解決
いいえ、これは唯一の方法ですが、私はあなたの現在のソリューションは素晴らしいものだと思います。あなた(ユーザーなど)が焦点にクリックする必要がある理由は、アプリケーションは、例えば、静かに、フォーカスを盗むことができない、あなたの知識がなくても、キーストロークをログに記録するようにということですパスワードを盗むために。
他のヒント
一部のブラウザ(IE)には、JavaScriptを経由してSWFのフォーカスを与えることができます。残念ながら、これはFirefoxで動作しません。だから一部のユーザーは、それがフォーカスをするためにSWFをクリックする必要があります。あなたはかなり簡単にゲーム内のブラウザをチェックし、それのIEが自動的にではなくSWFフォーカスを与える場合は、「開始」ボタンを示すことができました。そして、Firefoxでボタンを「開始」と表示されます。
下のリンクを見てみましょう。私のためによく働いています。
のhttp:// WWW .flexjunk.com / 2010/12月30日/管理-初期SWFフォーカス・イン・オールのブラウザ/ の