我可以创建像文本字段一样包装的链接按钮吗?

时间:2010-03-25 19:13:18

标签: flex

我基本上想通过循环LinkBut​​tons而不是创建文本字段来简化操作,因为链接按钮已经编译了翻转。

但是我有很多文字而且它还在继续。我希望它像文本字段一样包装。

由于

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

 public class multiLineLinkButton extends LinkButton {
      override protected function createChildren():void {
           super.createChildren();
           if (textField){
                textField.wordWrap = true;
                textField.multiline = true;

           }
      }

      override public function measureText(s:String):TextLineMetrics {
           textField.text = s;
           var lineMetrics:TextLineMetrics = textField.getLineMetrics(0);
           lineMetrics.width = 700;
           lineMetrics.height = textField.textHeight;


           return lineMetrics;
      }
 }

}

这是组件,但就像我说的一切都是自动居中的。

我试过paddingLEFT = 0;并尝试setStyle(“paddingLEFT”,0);但这些方法不起作用。

var test:multiLineLinkButton = new multiLineLinkButton();

        test.label = "sdfdsfdsfdsfsdfsdfsdfdsfsdfdsfdsdsfdsfdsfdffsdfdsfdfdsfdsfdsfdsfdsfdsfsdfdsfdfdsfdfdsfdsfsdfsdfsdf";
        test.setStyle("textAlign","left");

        var metrics:TextLineMetrics = measureText(test.label);

        trace(metrics.height);
        myCanvas.addChild(test);

所以metrics.height给了我14的高度,我认为即使它包装也是一条线。

1 个答案:

答案 0 :(得分:2)

这家伙做到了: http://ooine.com/index.php/2009/10/12/flex-linkbutton-word-wrap/

仅供参考,这是谷歌搜索词“flex linkBut​​ton自动换行”的第一个热门作品