Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   ну, и где DOUBLE_CLICK? (http://www.flasher.ru/forum/showthread.php?t=110382)

firelord 01.04.2008 22:16

ну, и где DOUBLE_CLICK?
 
господа, я может и ламер! но хелп читаю.

Код:

public class MapArea extends MovieClip {
  public function MapArea() {
      ...
      this.doubleClickEnabled=true; //!
      this.addEventListener(MouseEvent.DOUBLE_CLICK,onMouseDblClick);
      //this.addEventListener(MouseEvent.CLICK,onMouseClick);
  }

  public function onMouseClick(e:MouseEvent) {
      trace("click");
  }

  public function onMouseDblClick(e:MouseEvent) {
      trace("dblclick");
  }

}

не ловит ни фига double click :( упрямо ловит два click (если активирую handler, конечно!)

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

badun 01.04.2008 22:22

у меня работает нормально

firelord 01.04.2008 22:24

в этом я нисколько не сомневаюсь! я сомневаюсь только в собственной нормальности ;) может быть - есть какие-то скрытые факторы влияющие? типа фазы луны?

wvxvw 01.04.2008 22:28

Код:

doubleClickEnabled = true;
=)
Млин, мерещится стало %) думал с ошибкой написал

firelord 01.04.2008 22:29

а... уважаемый wvxvw! я допускаю, что я идиот - но не настолько ;)
ну, я-то вроде тоже без ошибок написал ;)
да, забыл добавить: doubleClickEnabled вставлял ДО. ПОСЛЕ и ВМЕСТО добавления обработчика... результат стабильный - клиент мертв...

wvxvw 01.04.2008 22:33

не... конец рабочего дня... не заметил, сорь.
ЗЫ. опять же, у мну работает. Мож макинтош? или дрова от мыши?

firelord 01.04.2008 22:36

писюк, чтоб ему так. дрова? dblclick, насколько я понимаю, формируется флешом самостоятельно из последовательных down, up - едва ли он использует виндовые события... ну, не настолько же все запущено ;)

йес! нашел :) оказывается, надо было ему воткнуть
Код:

this.mouseChildren=false;
(в хелпе про это ни слова, кстати ;)

в дочерних спрайтах был обработчик dblclick - собственно, я его ручками и вызываю потом (тут техника такая, ничего не поделаешь) - дочерние обработчики видать и блокировали обработчик парента! хотя и сами при этом не вызывались :)

----------------------------
хм. все равно ведет себя странно при этом... вплоть до циклического вызова обработчика. ладно, буду копать дальше сам... спасибо за участие!

wvxvw 01.04.2008 22:41

А ну так в коде ж про это ни слова не было %)

firelord 01.04.2008 22:47

:) вообщем, резюмирую - может быть мой опыт кому пригодится. при наличии детей в моем клипе DOUBLE_CLICK вызывается ТОЛЬКО при mouseChildren=false... век живи, век кликай...

badun 01.04.2008 23:39

Цитата:

Сообщение от firelord
в этом я нисколько не сомневаюсь! я сомневаюсь только в собственной нормальности ;) может быть - есть какие-то скрытые факторы влияющие? типа фазы луны?

Имел ввиду, что код из первого поста работает )).

А дети похоже не пропускают (точнее не генерят) DOUBLE_CLICK потому что у них doubleClickEnabled==false, можно им всем дабл-клики разрешить, хотя кончено mouseChildren=false проще и быстрее ))


Часовой пояс GMT +4, время: 13:22.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.