2012-01-26 14 views
0

別のキーを押したときにタブキーをシミュレートすることはできますか?私はまったく同じことをするつもりですが、DOWN & ENTER Key.シミュレーションでタブキーを押すとFlexが押されますか?

私はonKeyDown機能について知っています。私はこれを試しているが動作しません。

private function onKeyDown(e:KeyboardEvent) :void 
      { 
       if(e.keyCode == Keyboard.DOWN) 
       { 
        (e.currentTarget as TextInput).dispatchEvent(new KeyboardEvent(KeyboardEvent.KEY_DOWN, true, false, 0, Keyboard.TAB)); 
       } 
      } 

私はタブが異なる動作を知って、私はHereでそれを見たが、まだないという考え。

ご協力いただければ幸いです。

ありがとうございます。私はこのようにそれを解決し

stage.focus = myComp; 

または

stage.focus = myComps[currentCompOrderNumber+1]; 
+0

あなたはkeyupイベントで試してみましたか?キーダウンが最初に発射され、次にキーアップが最後に発射される。 – ShaunOReilly

+0

はい。変わりはない。ありがとう。 –

答えて

3

+1

良い答え、それを置くためにありがとう。 – Ryan

+0

よろしくお願いいたします –

-1

は、手動でピントを変更、配列内の要素をタブ移動置くようにしてください。これは後で他の人に役立つことを願っています。

private function onKeyDown(e:KeyboardEvent) :void 
      { 
       if(e.keyCode == Keyboard.DOWN || e.keyCode == Keyboard.ENTER) 
       {     
        focusManager.getNextFocusManagerComponent().setFocus(); 

       } 
       if(e.keyCode == Keyboard.UP) 
       { 
        focusManager.getNextFocusManagerComponent(true).setFocus(); 
       } 
      } 

Flashでは、focusManager自体がそのコンテキストでは定義されていない可能性があります。変更する: evt.currentTarget.focusManager.getNextFocusManagerComponent()。setFocus();

+0

非常に近い、ありがとうとにかく –

関連する問題