接下来的例子演示了Flex中如何通过maxChars属性,限制TextArea控件中允许输入的字数。
让我们先来看一下Demo(可以右键View Source或点击这里察看源代码):
下面是完整代码(或点击这里察看):
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="vertical"
- verticalAlign="middle"
- backgroundColor="white">
-
- <mx:Script>
- <![CDATA[
- private function textArea_change(evt:Event):void {
- var ta:TextArea = evt.currentTarget as TextArea;
- progressBar.setProgress(ta.length, ta.maxChars);
- }
-
- private function progressBar_progress(evt:ProgressEvent):void {
- var pb:ProgressBar = evt.currentTarget as ProgressBar;
- if (pb.percentComplete > 95) {
- pb.setStyle("themeColor", "red");
- } else if (pb.percentComplete > 80) {
- pb.setStyle("themeColor", "yellow");
- } else {
- pb.setStyle("themeColor", "haloGreen");
- }
- }
- ]]>
- </mx:Script>
-
- <mx:Panel>
- <mx:TextArea id="textArea"
- width="320"
- height="120"
- maxChars="300"
- change="textArea_change(event);" />
- <mx:ControlBar>
- <mx:ProgressBar id="progressBar"
- mode="manual"
- minimum="0"
- maximum="{textArea.maxChars}"
- label="%1 of %2 characters (%3%%)"
- labelPlacement="center"
- width="100%"
- progress="progressBar_progress(event);" />
- </mx:ControlBar>
- </mx:Panel>
-
- </mx:Application>
代码:Peter deHaan 翻译/整理/编译:中文Flex例子
上一篇:
Flex中如何通过selectedLabel控制ComboBox控件上文本对齐方式的例子 下一篇:
Flex中如何利用getTabAt函数遍历TabNavigator容器的各个Tab并且通过labelPlacement属