有没有简单的方法来检测RichTextEditable外的点击?就像在弹出窗口中使用FlexMouseEvent.MOUSE_DOWN_OUTSIDE一样。
由于
答案 0 :(得分:2)
我的方法是将MouseEvent.MOUSE_DOWN和SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE的事件侦听器附加到systemManager,如下所示:
systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, onMouseDown);
通过这种方式,您可以收到任何鼠标按下事件的通知,并且可以检查事件是否发生在RichEditableText组件内部。
希望有所帮助。
答案 1 :(得分:0)
我不确定您是指Spark RichEditableText
组件还是Halo RichTextEditor
,但他们都会发送FlexMouseEvent.MOUSE_DOWN_OUTSIDE
事件。
如果您有MXML,可以像以下一样收听:
<mx:RichTextEditor id="myText" mouseDownOutside="mouseDownOutsideFunction(event)" />
或来自ActionScript,如:
myText.addEventListener(FlexMouseEvent.MOUSE_DOWN_OUTSIDE,mouseDownOutsideFunction);
希望有所帮助。
答案 2 :(得分:0)
在寻找类似的问题之后遇到这个问题,意识到它已经过时了,但更多的是为了别人的利益。
您可以在TextInput / RichEditableText上使用focusOut事件。在TextInput / RichEditableText之外的任何单击都将触发要调度的事件。
所以: -
<s:RichEditableText id="textInput" focusOut="textInput_focusOutHandler(event)" />