Przechwytywanie tekstu wprowadzanego przez użytkownika
Flash Player 9 i nowsze wersje, Adobe AIR 1.0 i nowsze wersje
Domyślnie właściwość
type
pola tekstowego ma wartość
dynamic
. Jeśli właściwość
type
zostanie ustawiona na wartość
input
przy użyciu klasy TextFieldType, możliwe będzie rejestrowanie informacji wprowadzanych przez użytkownika i zapisywanie w celu wykorzystania w innych częściach aplikacji. Pola tekstu wejściowego są przydatne w formularzach i wszelkich aplikacjach, w których wartości tekstowe wprowadzone przez użytkownika mają być używane w innych miejscach programu.
W poniższym przykładowym kodzie tworzone jest pole tekstu wejściowego o nazwie
myTextBox
. Gdy użytkownik wprowadza tekst w polu, wywoływane jest zdarzenie
textInput
. Procedura obsługi zdarzenia o nazwie
textInputCapture
przechwytuje wprowadzony ciąg tekstowy i przypisuje go do zmiennej. Odtwarzacz Flash Player lub środowisko AIR wyświetla nowy tekst w innym polu tekstowym o nazwie
myOutputBox
.
package
{
import flash.display.Sprite;
import flash.display.Stage;
import flash.text.*;
import flash.events.*;
public class CaptureUserInput extends Sprite
{
private var myTextBox:TextField = new TextField();
private var myOutputBox:TextField = new TextField();
private var myText:String = "Type your text here.";
public function CaptureUserInput()
{
captureText();
}
public function captureText():void
{
myTextBox.type = TextFieldType.INPUT;
myTextBox.background = true;
addChild(myTextBox);
myTextBox.text = myText;
myTextBox.addEventListener(TextEvent.TEXT_INPUT, textInputCapture);
}
public function textInputCapture(event:TextEvent):void
{
var str:String = myTextBox.text;
createOutputBox(str);
}
public function createOutputBox(str:String):void
{
myOutputBox.background = true;
myOutputBox.x = 200;
addChild(myOutputBox);
myOutputBox.text = str;
}
}
}
|
|
|