Во Flex компоненты не отправляют событие keyDown, когда оно используется в PopupWrapper - PullRequest
0 голосов
/ 27 октября 2011

Я использую компонент в cairngorm PopupWrapper. Я хочу прослушать событие KeyboardEvent.KEY_DOWn в компоненте, но оно, похоже, не отправляет его. Это потому, что это в PopupWrapper? Могу ли я получить его для отправки события?

<fx:Declaration>
    <cairngorm:PopupWrapper>
        <mx:UIComponent keyDown="keyDownHandler()" />
    </cairngorm:PopupWrapper>
</fx:Declaration>

1 Ответ

1 голос
/ 28 октября 2011

Я понял это.

PopupWrapper добавляет FocusManager к компоненту, только если он реализует IFocusManagerContainer. Мой компонент расширял SkinnableComponent, поэтому не получил никакого фокуса. Поэтому я сделал свой компонент расширенным от SkinnableContainer. Мне также пришлось вручную установить фокус на свой компонент на «открытое» событие. Теперь keyDown отправляется как положено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...