Flash / Flex / ActionScript/TextField/Input Field
Formatting user input
<source lang="java">
package {
import flash.display.*; import flash.text.*; import flash.events.*; public class Main extends Sprite { public function Main( ) { var boldFormat:TextFormat = new TextFormat( ); boldFormat.bold = true; var italicFormat:TextFormat = new TextFormat( ); italicFormat.italic = true; var t:TextField = new TextField( ); t.text = "lunchtime"; t.setTextFormat(italicFormat, 0, 5); t.setTextFormat(boldFormat, 5, 9); t.type = TextFieldType.INPUT; t.addEventListener(TextEvent.TEXT_INPUT, textInputListener); addChild(t); } private function textInputListener (e:TextEvent):void { var t:TextField = TextField(e.target); e.preventDefault( ); t.replaceText(t.caretIndex, t.caretIndex, e.text); var regularFormat:TextFormat = new TextFormat( ); regularFormat.bold = false; regularFormat.italic = false; t.setTextFormat(regularFormat, t.caretIndex, t.caretIndex+e.text.length) var newCaretIndex:int = t.caretIndex + e.text.length; t.setSelection(newCaretIndex, newCaretIndex); } }
}
</source>
Making a User Input Field
<source lang="java">
package {
import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; public class Main extends Sprite { public function Main( ) { var field:TextField = new TextField( ); field.type = TextFieldType.INPUT; field.border = true; field.background = true; addChild(field); } }
}
</source>