KeyboardEvent an Textfeld senden [Flash 10]
| Beiträge: 3 Registriert: Sep 2011
| 11.09.2011, 12:59
Hallo,
ich möchte/muss eine Art Bildschirmtastatur in Flash hinbekommen, die mit einem Textfeld interagiert.
Bei Buchstaben klappt das ganz gut, wenn ich die entsprechenden CLICK-Events nutze, um Buchstaben an den bestehenden Text anzuhängen.
Jetzt soll das Ding aber auch den Cursor nach links oder rechts bewegen können. Mein Ansatz: Ein entsprechendes KeyboardEvent generieren und an das TextFeld schicken. Aber irgendwie will das nicht. Mein Code:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | // [...] team_txt gibt's schon und läuft auch
team_txt.type = TextFieldType.INPUT;
team_txt.selectable = true;
team_txt.text = "SPIELER 1";
team_txt.setSelection(0,team_txt.getLineLength(0));
stage.focus = team_txt;
// [...] die funktion wird vom entsprechenden Button gefeuert
function goLeft(){
var evt:KeyboardEvent = new KeyboardEvent(KeyboardEvent.KEY_DOWN);
evt.keyCode = Keyboard.LEFT;
evt.updateAfterEvent();
team_txt.dispatchEvent(evt);
stage.focus = team_txt;
}
|
Und es passiert? Nicht :-/ Muss ich ein anderes Event senden? Erstelle ich es falsch? Der Cursor bleibt ungestört da, wo er war. Das Komische:
Sende lasse ich mir das entsprechende Event erzeugt mit der Tasta anzeigen, ist das: ActionScript:1 | [KeyboardEvent type="keyDown" bubbles=true cancelable=false eventPhase=3 charCode=0 keyCode=37 keyLocation=0 ctrlKey=false altKey=false shiftKey=false]
|
Mein erzeugtes Event: ActionScript:1 | [KeyboardEvent type="keyDown" bubbles=true cancelable=false eventPhase=3 charCode=0 keyCode=37 keyLocation=0 ctrlKey=false altKey=false shiftKey=false]
|
Also quasi das gleiche und das target ist auch bei beiden team_txt... | | | Beiträge: 1776 Wohnort: Laimbach 6 1/2 Registriert: Nov 2002
| 11.09.2011, 16:34
|
|