专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Flex

请教checkbox的label文字怎么换行

发布时间:2011-06-27 20:45:29 文章来源:www.iduyao.cn 采编人员:星星草
请问checkbox的label文字如何换行?
label字体改变后,一行太长,如何换行?

------解决方案--------------------
我没找到简单的办法对应,自定义了一个组件。你看看对不对:

JScript code

package
{
    import flash.text.TextLineMetrics;
    
    import mx.controls.CheckBox;

    public class MyCheckBox extends CheckBox
    {
        public function MyCheckBox()
        {
            super();
        }
        
        override protected function createChildren():void
        {
            super.createChildren();
            
            if (textField != null) {
                textField.multiline = true;
                textField.wordWrap = true;
            }
        }
        
        override protected function updateDisplayList(unscaledWidth:Number,
                                                  unscaledHeight:Number):void {
            super.updateDisplayList(unscaledWidth,unscaledHeight);

            var lineMetrics:TextLineMetrics = measureText(label);
            var textWidth:Number = lineMetrics.width + 6;
            var textHeight:Number = lineMetrics.height + 4;
            var paddingLeft:Number = textField.getStyle("paddingLeft") as Number;
            var paddingRight:Number = textField.getStyle("paddingRight") as Number;
            var paddingTop:Number = textField.getStyle("paddingTop") as Number;
            var paddingBottom:Number = textField.getStyle("paddingBottom") as Number;
            
            
            textHeight = (textWidth/(textField.width - paddingLeft - paddingRight))*(textHeight + paddingTop+paddingBottom);
            textField.height = textHeight;
        }
        
    }
}
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: