Flex / Flash: не показывать курсор 'bar' при перетаскивании по TextField / TextArea? - PullRequest
0 голосов
/ 01 июня 2010

Как видно из заголовка, как я могу предотвратить появление курсора "bar" при нажатии и перетаскивании на TextField? Например, рассмотрим это взаимодействие:

альтернативный текст http://img.skitch.com/20100601-dhsqsgfsjphfdf3eambshww72m.png

Я бы хотел предотвратить изменение курсора на "полосу" на шаге "2".

Как я могу это сделать?

Я пытался поиграться с флагом selectable:

protected static function fixMouseOverAfordance(field:TextField):void {
    var iOwnClick:Boolean = false;

    function handleMouseOver(event:MouseEvent):void {
        if (event.buttonDown) {
            field.selectable = iOwnClick;
        } else {
            field.selectable = true;
            iOwnClick = false;
        }
    }

    field.addEventListener(MouseEvent.MOUSE_OVER, handleMouseOver,
                              false, EventPriority.CURSOR_MANAGEMENT+1);
    field.addEventListener(MouseEvent.ROLL_OVER, handleMouseOver,
                              false, EventPriority.CURSOR_MANAGEMENT+1);
    field.addEventListener(MouseEvent.MOUSE_MOVE, handleMouseOver,
                              false, EventPriority.CURSOR_MANAGEMENT+1);

    field.addEventListener(MouseEvent.MOUSE_DOWN,
        function(event:MouseEvent):void {
            iOwnClick = true;
            field.selectable = true;
    });
}

Но курсор "bar" по-прежнему появляется при первом наведении курсора мыши на текстовое поле (однако, после того, как он был перемещен, а затем возвращен обратно, он делает правильную вещь).

1 Ответ

1 голос
/ 01 июня 2010

Прозрачный MC поверх, чтобы соответствовать? Снято в темноте ...

Кроме того, не уверен, какое влияние будут иметь mouseEnabled / mouseChildren.

Интересно!

...