1

キーが押されているかどうかを確認する必要があります。

私はこのコードを使用しています。これを実行しても、laszlo 画面をクリックしない限り何も実行されません。なぜこれが起こっているのですか?

<canvas height="250" debug="true">
     <debug height="90%" />
     <handler name="onkeydown" reference="lz.Keys" args="k">
       Debug.debug("key %w %s", k, "down");
     </handler>
    <handler name="onkeyup" reference="lz.Keys" args="k">
      Debug.debug("key %w %s", k, "up");
    </handler>
    <method name="pressA" args="ignore=null">
      Debug.debug("A pressed");
    </method>
     <handler name="oninit">
      var del = new LzDelegate(this, "pressA");
       lz.Keys.callOnKeyCombo(del, ["A"]);
    </handler>


 </canvas>
4

1 に答える 1

1

3.3について言及しているので、SWFランタイムを意味すると仮定します。キーダウンの処理は、ブラウザまたはブラウザの Flash プラグインによって管理されます。共有されません。Flash コンポーネントにフォーカスがない限り、すべてのイベントがブラウザに送信されます。Flash がフォーカスされると、すべてのイベントをキャプチャしようとし、Flash とブラウザーの間に障壁を作成します。

私のオペレーティング システムでは、Ctrl-o はブラウザでファイルを開くことに割り当てられています。Flash ムービーがブラウザーに読み込まれている場合、Flash にフォーカスがあると、Ctrl-O コマンドは機能しません。ロケーションバーをクリックすると、再び機能します。SO での SWF/ブラウザ フォーカスの動作に関して、多くの質問があります。

于 2012-08-24T14:39:41.993 に答える