![]() |
Завершение ресайза
есть событие Event.RESIZE:
Код AS3:
|
например таймером. Суешь таймер в resizeHandler - если в течении 3 секунд например ресайз не происходит - ловим событие остановки ресайза. Тока непонятно зачем это нужно
|
Ресайз чего? Всей сцены? Это и есть в данном случае Event.RESIZE.
После этого события уже будут доступны новые значения stageWidth и stageHeight |
Цитата:
Добавлено через 3 минуты Цитата:
|
Цитата:
|
Я думаю тут было бы идеально каким-либо образом отловить событие MOUSE_UP после ресайза. Ведь именно этим и заканчивается ресайз.
|
Цитата:
|
Если флешка ваша, и обработчик resize всего один, то он же и будет и первым и последним... Если вы не уверены, что обработчик всего один, то, я если честно, не совсем представляю, как это сделать, но и практического смысла в этом не вижу... Можете описать зачем это нужно?
|
Цитата:
|
Событие Event.RESIZE является конечным , оно возникает после того как размер изменился , в его обработчике нужно возвращать исходное качество , а не менять его.
Цитата:
|
Цитата:
|
Событие resize случается с определенной дискретностью во времени. Т.е. если вы растягиваете медленно окно с флешкой, то оно будет случаться, в зависимости от плеера, оси, браузера и т.п. с каким-то интервалом. Интервал вам заранее не известен. Закончится ли изменение размеров - вам тоже не известно (может быть так, что и не закончится вообще, если вашими же умелыми руками в HTML странице будет скрипт "плавно меняющий" размер флешки, постоянно). Так что если вы имели в виду событие потянул-отпустил, то, в общем случае, "отпустил" может никогда не наступить, и предполагать, что оно обязательно наступит, следовательно, не логично. Логично по таймеру или в каждом новом кадре проверять не изменились ли с последнего раза размеры сцены (т.е. не произошло ли >0 событий resize), и, если да, то отрисовать сцену по-новой.
|
Цитата:
|
Событие Event.RESIZE возникает ПОСЛЕ того, как размер stage изменился.
Далее возможны 2 варианта: 1. Если отключены всевозможные настройки типа "Scale content with stage", то ПОСЛЕ ресайза stage (в момент вызова назначенного resizeHandler) ни один объект еще не изменил размер. Соответственно с ними можно делать все что угодно - программно (в теле resizeHandler). 2. Если всевозможные настройки типа "Scale content with stage" включены, то на момент вызова resizeHandler (по событию Event.RESIZE) все объекты с включенными опциями Scale уже будут изменены в размере. Причем для них событие RESIZE может и не возникнуть, так как флеш в этом случае "думает", что пользователю нужна "экранная лупа", и он (флеш) отресайзит объекты без вашего участия. |
| Часовой пояс GMT +4, время: 11:18. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.