Flex 4: обнаружение кликов за пределами RichEditableText - PullRequest
1 голос
/ 10 сентября 2010

Есть ли простой способ обнаружить клик за пределами RichTextEditable? точно так же, как FlexMouseEvent.MOUSE_DOWN_OUTSIDE используется во всплывающих окнах.

Спасибо

Ответы [ 3 ]

2 голосов
/ 14 сентября 2010

Мой подход заключается в том, чтобы подключить прослушиватели событий для MouseEvent.MOUSE_DOWN и SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE к systemManager следующим образом:

systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, onMouseDown);

Таким образом, вы получаете уведомление о любых событиях отключения мыши и можете проверитьчтобы увидеть, происходит ли событие внутри вашего компонента RichEditableText или нет.

Надеюсь, это поможет.

0 голосов
/ 30 марта 2012

Наткнулся на это после поиска похожей проблемы, понял, что она довольно старая, но больше для блага других.

Вы можете использовать событие focusOut для TextInput / RichEditableText. Любой щелчок за пределами TextInput / RichEditableText вызовет отправку события.

Итак: -

<s:RichEditableText id="textInput" focusOut="textInput_focusOutHandler(event)" />
0 голосов
/ 10 сентября 2010

Я не уверен, что вы имеете в виду компонент Spark RichEditableText или Halo RichTextEditor, но они оба отправляют событие FlexMouseEvent.MOUSE_DOWN_OUTSIDE.

Если у вас есть MXML, вы можете слушать его как:

<mx:RichTextEditor id="myText" mouseDownOutside="mouseDownOutsideFunction(event)" />

или из ActionScript, например:

myText.addEventListener(FlexMouseEvent.MOUSE_DOWN_OUTSIDE,mouseDownOutsideFunction);

Надеюсь, это поможет.

...