【问题标题】:Limiting Text to spark textarea available size限制文本以触发文本区域可用大小
【发布时间】:2011-05-28 15:35:38
【问题描述】:

我正在尝试构建一个动态大小的 spark textArea,它将可能的文本限制为其大小。

例如,textarea 设置为 width="300" 和 height="100"。现在,用户应该只能输入或粘贴组件中可见的尽可能多的文本。如果输入更多文本,我不希望 textArea 滚动或换行。

我尝试了各种方法,但都没有成功。

非常感谢您的帮助!

【问题讨论】:

    标签: text textarea limit


    【解决方案1】:

    我遇到了同样的问题,但没有找到完美的解决方案。但我找到了解决此问题的简单方法。

    Spark TextArea 具有 IEditableText 类型的 textDisplay 属性。默认情况下,将 RichEditableText 组件分配给此属性。该组件中有一个名为 contentHeight 的属性。我使用此属性来确定文本高度是否超过 textArea 高度。所以我的简单解决方案是这样的:

    protected function textArea1_changeHandler(event:TextOperationEvent):void { 
           if (textArea1.textDisplay is RichEditableText){
                 if ((textArea1.textDisplay as RichEditableText).contentHeight > textArea1.height){
                         textArea1.maxChars = textArea1.text.length;
                  }
                  else {
                         textArea1.maxChars = 0;
                  }
           }
    }
    

    当然,这需要在应用程序中使用之前进行微调。但我想尽快发布解决方案:) 我将发布所需的确切逻辑。不过我觉得你自己也可以……

    【讨论】:

      【解决方案2】:

      对于 Spark textArea,我在每次更改文本时都使用它:

      while (textArea.textFlow.flowComposer.numLines>textArea.heightInLines) textArea.text = textArea.text.substr(0,textArea.text.length-1);

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-02-16
        • 1970-01-01
        • 1970-01-01
        • 2012-06-27
        • 2012-02-29
        • 1970-01-01
        • 2011-01-06
        • 2011-11-02
        相关资源
        最近更新 更多