1、第一步,在做项目的过程中,我发现用Flex中的组件TitleWindow时,如果Label中的内容过长,会把其他的组件或控件样式弄乱,甚至把它们从窗口中挤出去。为了解决这个问题,我查阅了不少资料,但是真正有用的却很少。 我尝试自己解决这个问题,于是新建了一个应用程序测试,如下图所示:
2、第二步,在网上说,对于Flex3版本,是用truncateToFit="true争犸禀淫"这个属性来解决Label内容过长的问题;对于Flex4的版本,设置Lab髫潋啜缅el的高度、lineBreak="explicit"和maxDisplayedLines="1"我用的是Flex4版本,也将Flex3版本的办法和Flex4版本的办法都试过了,但是这个问题根本没有解决,样式还是混乱的为了测试,我新建了一个TitleWindow组件,如下图所示
3、第三步,在Flex应用程序中,调用TitleWindow组件/** * 打开Windo嘛术铹砾w函数 */ protected function textArea_clickHandler(event:MouseEvent):void { var textWin:TextWin = TextWin(PopUpManager.createPopUp(this,TextWin,true)); PopUpManager.centerPopUp(textWin); }如下图所示:
4、第四步,在TitleWindow组件中添加含有Label的控件<mx:VBox wi蟠校盯昂dth="100%" height="100%"> <mx:Form> <mx:FormHeading label="测试Label内容的长度"/> <mx:FormItem label="名称"> <s:Label text="负担和风景都看过了快乐"/> </mx:FormItem> <mx:FormItem label="地址"> <s:Label text="********************************************************************************************************************************************************************************************************" width="300"/> </mx:FormItem> <mx:FormItem label="电话"> <s:Label text="18785656562"/> </mx:FormItem> </mx:Form> <mx:HBox width="100%" height="30" horizontalAlign="center"> <s:Button id="closeBtn" label="关闭"/> </mx:HBox> </mx:VBox>
5、第五步,运行Flex应用程序,并点击按钮,会看到弹窗中的label内容已经挤到外面,而且窗口中的关闭按钮也已经漂移了
6、第六步,于是,我在Label标签中添加一个宽度width="300",窑钕仇焱结果发现Label内容都在窗口内,而且超过这个长度的内容自动换行这样,我得出一个结论:在Flex4中,如果Label中的内容过长,可以使用确切的宽度值来限制下面两个步骤是验证网上的办法,作为一个对比