2011-10-11 26 views
0

標題幾乎說了一切...有沒有一種簡單的方法,我可以模擬被按下的輸入/返回鍵?Flex 3:我怎樣才能模擬被按下的輸入/返回鍵

編輯:

我有這麼多,但我不知道如何使它在一個循環中運行:

var keyCode:uint = Keyboard.ENTER; 
var e:KeyboardEvent = new KeyboardEvent(KeyboardEvent.KEY_DOWN, true, false, 0, keyCode); 

我需要它下面的循環中運行:

for (var i:int = 0; i < changes.length; i++) 
{ 
    if (changes[i][0] == "directorsPrep") 
    { 
     directorsPrep[changes[i][1]].phaseFillers[changes[i][2]].fillDisplayName.setFocus(); 
     // NEED IT TO RUN RIGHT HERE! 
    } 
} 
+1

您是否嘗試過在舞臺上調度鍵盤事件,或者只是簡單地調用您的鍵盤處理程序與構造的鍵盤事件? –

+0

@AmyBlankenship - 我嘗試了谷歌搜索這個,但我找不到任何導致我正確的答案。我試過調整我能找到的,但沒有任何工作。 – Brds

+0

而「你能找到什麼」是什麼? –

回答

2
for (var i:int = 0; i < changes.length; i++) 
{ 
    if (changes[i][0] == "directorsPrep") 
    { 
     directorsPrep[changes[i][1]].phaseFillers[changes[i][2]].fillDisplayName.setFocus(); 
     // NEED IT TO RUN RIGHT HERE! 
     // create the keyboard event; using your code 
     var keyCode:uint = Keyboard.ENTER; 
     var e:KeyboardEvent = new KeyboardEvent(KeyboardEvent.KEY_DOWN, true, false, 0, keyCode); 
     // dispatch it  
     componentThatYouWantToDispatchKeyBoardEvent.dispatchEvent(e); 
    } 
} 

componentThatYouWantToDispatchKeyBoardEvent變量可以是延伸EventDispatcher或實現任何組件。

+0

謝謝,這工作...但它並沒有解決我遇到的問題:(不管怎樣,很高興知道:) – Brds