これはそれほど難しいことではありませんが、セットアップには少し時間がかかります。
最初に、次のように UTF-8 値をキー値にマッピングする辞書またはオブジェクトを作成します。
var keyCodes:Dictionary = new Dictionary();
keyCodes[49] = Keyboard.NUMBER_1; //1
// add the rest of the mappings...
次に、SHIFTを指定する必要があるため
var shiftedKeyCodes:Dictionary = new Dictionary();
shiftedKeyCodes[33] = Keyboard.NUMBER_1; //!
// add the rest of the shifted mappings
次に、次のようなユーティリティ関数を作成します。
public function charCodeToKeyboardEvent(charCode:int):KeyboardEvent{
var event:KeyboardEvent = new KeyboardEvent(KeyboardEvent.KEY_UP);
event.charCode = charCode;
if(keyCodes[charCode]){
event.keyCode = keyCodes[charCode];
} else if (shiftedKeyCodes[charCode]){
event.keyCode = shiftedKeyCodes[charCode];
event.shiftKey = true;
} else {
return null;
}
return event;
}
次に、文字列をループして次のようにします。
for(var i:int = 0; i < myString.length; i++){
dispatchEvent(charCodeToKeyboardEvent(myString.charCodeAt(i)));
}
編集:これを更新して、キーボードクラスの定数を使用して、デバイスやオペレーティングシステムに関係なく動作するようにしました。