[AS3] 限制中英文字数 import flash.events.TextEvent; var maxTextNum:uint = 10; myTxt.addEventListener(TextEvent.TEXT_INPUT, onTextInput); function onTextInput(e:TextEvent):void { trace(__getStringBytesLength(myTxt.text, "Big5")); if (__getStringBytesLength(myTxt.text, "Big5") > (maxTextNum - 1)) { e.preventDefault(); return; } } function __getStringBytesLength(str:String,charSet:String):int { var bytes:ByteArray = new ByteArray(); bytes.writeMultiByte(str, charSet); bytes.position = 0; return bytes.length; }1. Text.autoSize 这种方法可以设置文本的对齐方法,按后计算文字长度再通过设置文本的x坐标,从而达到居中显示的目的。 但这种方法无法在不自动换行的情况下限制文本的长度。也就是说指定txt.width属性是无效的。
myText.autoSize=TextFieldAutoSize.LEFT; myText.x=stage.stageWidth/2-myText.textWidth/2;
2. TextFormat.align = “center”
这种方法是通过指定一个TextFormat对象给文本的txt.defaultTextFormat属性。并设置这个TextFormat对象的TextFormat.align = “center”。这种方法需要设置文本长度,文字将在指定的文本长度中处于居中位置。var tf:TextFormat = new TextFormat (); tf.align = "center"; myText.width = 400; myText.defaultTextFormat = tf;
3. htmlText的p标签;
这种方法是在文本的txt.htmlText属性值得中设置对齐方式。在flash中支持的html标签中,p标签支持align属性。这种方法需要设置文本长度,文字将在指定的文本长度中处于居中位置。myText.width = 400; myText.htmlText = "<p align='center'>文本内容...</p>";
4. styleSheet的textAlign = “center”
这种方法是设置文本的txt.styleSheet,在styleSheet中设置textAlign = “center”。这种方法需要设置文本长度,文字将在指定的文本长度中处于居中位置。var style:StyleSheet = new StyleSheet(); var p:Object = new Object(); p.textAlign = "center"; style.setStyle("p", p); myText.width = 400; myText.styleSheet = style;
[AS3] 文字显示
最新推荐文章于 2022-01-02 20:04:53 发布