PDA

Просмотр полной версии : Как сделать событие onDrag?


hayabu4i
18.05.2007, 23:28
Вопрос такой: возможно ли впринцыпе отследить событие, когда какойто объект на сцене "таскаеться"? Например, чтобы сделать маркеры для растягивания прямоугольника: нарисовал в уголочке квадратик, тянешь за него и весь прямоуголник перерисовываеться.

etc
19.05.2007, 00:03
Ну как же, ведь кто-то написал код для перетаскивания клипа…

Usnul
19.05.2007, 01:42
onClick

BigDan
19.05.2007, 22:42
В общих начертаниях:
onClick = {
myTimerFunct.start();
}
onRelease = {
myTimerFunct.stop();
}
myTimerFunc = {
dispatchEvent(new Event("DRAGING"));
}

etc
19.05.2007, 23:25
В общих начертаниях:
onClick = {
myTimerFunct.start();
}
onRelease = {
myTimerFunct.stop();
}
myTimerFunc = {
dispatchEvent(new Event("DRAGING"));
}
И как, работает? :D

BigDan
19.05.2007, 23:32
Это был не рабочий код, а шаблон.

hayabu4i
21.05.2007, 15:55
Ктото написал, а событие такое зделать наверное забыл. Как реализовать его аналог с помощью таймера или ещё чегото (например с помощью события onEnterFrame) знаю, но интересно, может есть способ поизящьнее чтоли? может знает кто - напишите пожалуйста

BigDan
21.05.2007, 19:31
если делать без таймера, то событие будет вызыватся один раз.

hayabu4i
22.05.2007, 00:00
да это всё понятно. но например событие onMouseMove работает без всякого таймера. оно заложено во флэш изначально и я так подозреваю что работает быстрее чем функция, которая проверяет изменение положения курсора каждую милисекунду. вот хотелось бы чтоб так было и с onDrag, но судя по всему такого нету. жаль

p.s. если ктото всётаки найдёт по этому поводу интересное чтото - напишите в эту тему

__i
22.05.2007, 12:20
а повесить код на маус мув?


....function mouseMoveHandler (event : MouseEvent) : void
{
dispachEvent(new Event("myDragEvent"));
}

hayabu4i
22.05.2007, 20:40
это лишняя операция: передаёться событие "onMouseMove"-> передаёться событие "myDragEvent"-> срабатывает обработчик onDrag. лучше уже в обработчике onMouseMove написать код для onDrag.

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