不允许在 Flex 中编辑 textarea 中的特定区域
Posted
技术标签:
【中文标题】不允许在 Flex 中编辑 textarea 中的特定区域【英文标题】:Do not allow editing at sepecific area in text area in Flex 【发布时间】:2011-12-25 23:26:08 【问题描述】:我只想不允许在 flex 中的某些文本区域进行编辑。怎么做?
假设文本区域中的文本长度为 50 个字符,如果光标位置小于 15,我想允许编辑,如果文本区域中的光标位置大于 15,则不应允许用户在文本区域中添加更多文本. 如果用户按下任何键,则不应在文本区域中添加任何字符。
我用过
event.preventDefault();
event.stopImmediatePropagation();
event.stopPropagation();
在按键事件中,但它对我不起作用。
谁能帮助我? 谢谢。
【问题讨论】:
【参考方案1】:也许随着使用而改变而不是改变。我想这就是你想要的:
<fx:Script>
<![CDATA[
import spark.events.TextOperationEvent;
protected function textarea1_changeHandler(event:TextOperationEvent):void
trace("indexchange: ",ta.selectionActivePosition);
protected function ta_changingHandler(event:TextOperationEvent):void
trace("indexchanging: ",ta.selectionActivePosition);
if(ta.selectionActivePosition>15) event.preventDefault();
]]>
</fx:Script>
<s:TextArea id="ta" x="6" y="11" text="12345678901234567890" changing="ta_changingHandler(event)" change="textarea1_changeHandler(event)"/>
【讨论】:
以上是关于不允许在 Flex 中编辑 textarea 中的特定区域的主要内容,如果未能解决你的问题,请参考以下文章
TextArea htmlText 设置时不更新文本属性(Flex)
Flex TextArea - 从 Word 复制/粘贴 - xml 解析中的 unicode 字符无效
Flex ApplyFormatOperation 中断 Spark TextArea 中的撤消/重做