Apache flex 如何在可编辑文本区域内禁用回车?

Apache flex 如何在可编辑文本区域内禁用回车?,apache-flex,flex3,textarea,carriage-return,restrict,Apache Flex,Flex3,Textarea,Carriage Return,Restrict,我只是想阻止用户在文本区域中输入回车。我一直在试验TextArea中的“restrict”属性,但似乎无法解决它 我有以下代码: <mx:Canvas id="cvs1" label="Panel 1" width="100%" height="100%" creationComplete"addEvtListnerOnPlaceText()" backgroundColor="#FFFFFF"> <mx:TextArea id="txtP1T1" x="10" y="

我只是想阻止用户在文本区域中输入回车。我一直在试验TextArea中的“restrict”属性,但似乎无法解决它

我有以下代码:

<mx:Canvas id="cvs1" label="Panel 1" width="100%" height="100%" creationComplete"addEvtListnerOnPlaceText()" backgroundColor="#FFFFFF">
    <mx:TextArea id="txtP1T1" x="10" y="176" text="{placeName}" width="210" textAlign="center" color="#DC0000" restrict="this is where I need some help"/>
</mx:Canvas>

现在唯一的问题是,如果按住return键,它将清除第一个回车符,然后只要按住它,它就会继续添加。我需要一种方法来阻止这种情况的发生,而不只是失去对文本区域的关注。

没有使用flex3的经验,但在基于使用事件驱动算法的想法进行粗略调查后,您似乎可以利用并删除输入文本中的任何换行符/回车符,然后再传递到
文本区域

或者,您可能想看看


然而,使用restrict属性似乎确实是最简单的,因为您可以将其设置为
“^\r”
,这样就排除了回车,并且只输入回车。(当然,我建议改为使用
“^\r\n”
,以提供整体换行保护,防止回车、换行以及两者的任意组合。)


“^\r\n”选项听起来不错,不幸的是flex似乎不理解这一点。我还尝试阻止ASCII值;“^\u000D”。也不成功,尽管它将阻止所有其他ASCII字符。我猜回车(CR)被认为是不合适的字符。我想我需要试试键盘事件。当文本区域出现时,我将尝试禁用CRfocus@Michael:那么flex3文档中一定有错误,因为
\r
被列为字符串文本中可用的转义序列之一:……当您尝试使用它时,具体发生了什么?你有错误吗,或者它只是不阻止你在文本区域键入换行符?它只是不阻止我在文本区域键入换行符。我在键盘上按回车键,它就转到一个新行。非常令人沮丧。
    private function addEvtListnerOnPlaceText():void{
        txtP1T1.addEventListener(KeyboardEvent.KEY_DOWN, onKeyEventDown);
        txtP1T1.addEventListener(KeyboardEvent.KEY_UP, onKeyEventUp);
    }

    [Bindable]
    public var tempString:String;
    private function onKeyEventDown(e:KeyboardEvent):void
    {
        var character:String = String.fromCharCode(e.charCode);

        if (e.keyCode == 13)
        {
            tempString = txtP1T1.text;
            KeyboardEvent.KEY_UP;
        }

    }
    private function onKeyEventUp(e:KeyboardEvent):void
    {
        var character:String = String.fromCharCode(e.charCode);

        if (e.keyCode == 13)
        {
            txtP1T1.text = tempString;
        }

    }