|
Komponenten TextInput är en enkelradstextkomponent som är en wrapper för det ursprungliga ActionScript TextField-objektet. Om du behöver ett textfält med flera rader använder du TextArea-komponenten. Du kan till exempel använda en TextInput-komponent som ett lösenordsfält i ett formulär. Du kan också ställa in en avlyssnare som kontrollerar om fältet har tillräckligt många tecken när användaren tabbar ut ur fältet. Avlyssnaren kan visa ett felmeddelande som anger att korrekt antal tecken måste skrivas in.
Du kan ställa in
textFormat
-egenskapen med metoden
setStyle()
för att ändra stilen på texten som visas i en TextInput-förekomst. En TextInput-komponent kan även formateras med HTML, eller som ett lösenordsfält som döljer texten.
Användarinteraktion med komponenten TextInput
En TextInput-komponent kan aktiveras eller inaktiveras i ett program. I inaktiverad status tas inmatning från mus eller tangentbord inte emot. I aktiverad status följer den samma fokus, val och navigeringsregler som ActionScript TextField-objekt. När en TextInput-förekomst har fokus kan du också använda följande tangenter för att styra den:
|
Nyckel
|
Beskrivning
|
|
Piltangenter
|
Flyttar insättningspunkten ett tecken åt vänster eller höger.
|
|
Skift+Tabb
|
Flyttar fokus till föregående objekt.
|
|
Tabb
|
Flyttar fokus till nästa objekt.
|
Mer information om att kontrollera fokus finns i avsnittet om gränssnittet FocusManager i
Referenshandbok för ActionScript 3.0
i Adobe Flash Professional
och
Arbeta med FocusManager
.
En direktförhandsvisning av varje TextInput-förekomst reflekterar ändringar som gjorts för parametrar i egenskapsinspektören eller komponentinspektören vid redigeringen. Det går inte att markera text i direktförhandsvisningen, och du kan inte ange text i komponentförekomsten på scenen.
När du lägger till TextInput-komponenten i ett program kan du använda hjälpmedelspanelen för att göra den åtkomlig för skärmläsare.
TextInput-komponentparametrar
Du kan ställa in följande utvecklingsparametrar för varje förekomst av TextInput-komponenten i egenskapsinspektören eller komponentinspektören:
editable
,
displayAsPassword
,
maxChars
,
restrict
och
text
. Var och en av de här parametrarna har en motsvarande ActionScript-egenskap med samma namn. Information om möjliga värden på de här parametrarna finns i avsnittet om klassen TextInput i
Referenshandbok för ActionScript 3.0
i Adobe Flash Professional
.
Du kan skriva ActionScript för att styra de här och andra alternativ för TextInput-komponenten med hjälp av dess egenskaper, metoder och händelser. Mer information finns i avsnittet om klassen TextInput i
Referenshandbok för ActionScript 3.0
i Adobe Flash Professional
.
Skapa ett program med komponenten TextInput
I proceduren nedan beskrivs hur du lägger till en TextInput-komponent i ett program. Exemplet använder två TextInput-fält för att ta emot och bekräfta ett lösenord. En händelseavlyssnare används för att se om minst åtta tecken har angetts, och att texten för de två fälten överensstämmer.
-
Skapa ett nytt Flash-dokument (ActionScript 3.0).
-
Dra en Label-komponent från panelen Komponenter till scenen och ge den följande värden i egenskapsinspektören:
-
Dra ytterligare en Label-komponent från panelen Komponenter till scenen och ge den följande värden:
-
Dra ytterligare en TextInput-komponent från panelen Komponenter till scenen och ge den följande värden:
-
Dra ytterligare en TextInput-komponent från panelen Komponenter till scenen och ge den följande värden:
-
Öppna åtgärdspanelen, markera bildruta 1 i huvudtidslinjen och ange följande ActionScript-kod:
function tiListener(evt_obj:Event){
if(confirmTi.text != pwdTi.text || confirmTi.length < 8)
{
trace("Password is incorrect. Please reenter it.");
}
else {
trace("Your password is: " + confirmTi.text);
}
}
confirmTi.addEventListener("enter", tiListener);
Den här koden ställer in en
enter
-händelsehanterare för TextInput-förekomsten med namnet
confirmTi
. Om de två lösenorden inte överensstämmer med varandra, eller om användaren skriver färre än åtta tecken visas följande felmeddelande: ”Fel lösenord. Ange lösenordet igen." Om lösenorden är åtta eller fler tecken långa och de överensstämmer, visas värdet som angavs i utdatapanelen.
-
Välj Kontroll > Testa filmen.
Skapa en TextInput-förekomst med ActionScript
Med följande exempel skapas en TextInput-komponent med ActionScript. Exemplet skapar också en Label som används för att uppmana användaren att ange sitt namn. Komponentens
restrict
-egenskap ställs in så att enbart versala och gemena bokstäver, punkt och mellanslag tillåts. Dessutom skapas ett TextFormat-objekt som används för att formatera texten i Label- och TextInput-komponenterna.
-
Skapa ett nytt Flash-dokument (ActionScript 3.0).
-
Dra TextInput-komponenten från panelen Komponenter till bibliotekspanelen.
-
Dra en Label-komponent från panelen Komponenter till bibliotekspanelen.
-
Öppna åtgärdspanelen, markera bildruta 1 i huvudtidslinjen och ange följande ActionScript-kod:
import fl.controls.Label;
import fl.controls.TextInput;
var nameLabel:Label = new Label();
var nameTi:TextInput = new TextInput();
var tf:TextFormat = new TextFormat();
addChild(nameLabel);
addChild(nameTi);
nameTi.restrict = "A-Z .a-z";
tf.font = "Georgia";
tf.color = 0x0000CC;
tf.size = 16;
nameLabel.text = "Name: " ;
nameLabel.setSize(50, 25);
nameLabel.move(100,100);
nameLabel.setStyle("textFormat", tf);
nameTi.move(160, 100);
nameTi.setSize(200, 25);
nameTi.setStyle("textFormat", tf);
-
Välj Kontroll > Testa filmen för att köra programmet.
|
|
|