AS3 TextArea 点击处理
Posted
技术标签:
【中文标题】AS3 TextArea 点击处理【英文标题】:AS3 TextArea click handling 【发布时间】:2015-02-06 13:51:37 【问题描述】:我在处理 TextArea 上的单击事件时遇到问题。我正在使用 Flash Mobile 开发移动应用程序。我想在该区域显示一个默认文本,并在用户选择该字段时使其消失。
问题是,只有当我单击 TextArea 的边框时才会引发该事件。选择光标处于活动状态时,它永远不会发生。我还尝试在 notesInput 中添加一个 false 可编辑属性,并在处理程序中将其设置为 true,但没有帮助。
private function notesClickHandler(event:Event):void
notesInput.text = "";
notesInput.removeEventListener(MouseEvent.CLICK, notesClickHandler);
form.invalidElements;
<TextArea id="notesInput" text="Poznámky.."
verticalScrollPolicy="auto"/>
感谢你们的时间和帮助。
【问题讨论】:
【参考方案1】:您可以使用提示文字来满足您的要求:
<s:TextArea id="notesInput"
prompt="Default Text"
verticalScrollPolicy="auto"/>
当您聚焦时,它不会清除默认文本。但是您可以通过在您聚焦于 TextArea 时清除提示文本来实现。
<fx:Script><![CDATA[
private function onFocusIn():void
notesInput.prompt = "";
private function onFocusOut():void
notesInput.prompt = "Default Text";
]]></fx:Script>
<s:TextArea id="notesInput"
prompt="Default Text"
verticalScrollPolicy="auto"
focusIn="onFocusIn()"
focusOut="onFocusOut()"/>
【讨论】:
【参考方案2】:为此,您可以像这样使用focusIn
事件:
private function text_area_focusInHandler(event:FocusEvent):void
text_area.text = ''
<s:TextArea id="text_area" x="10" y="10" focusIn="text_area_focusInHandler(event)" text="default text"/>
【讨论】:
以上是关于AS3 TextArea 点击处理的主要内容,如果未能解决你的问题,请参考以下文章
ActionScript 3 AS3防止TextArea组件中的多线
ActionScript 3 AS3格式化TextArea组件的文本
AS3里【TextField】于【TextArea】有啥区别?