![]() |
|
||||||||||
|
|||||
|
Регистрация: Jun 2003
Сообщений: 263
|
Понятно, спасибо
|
|
|||||
|
Modus ponens
|
Событие resize случается с определенной дискретностью во времени. Т.е. если вы растягиваете медленно окно с флешкой, то оно будет случаться, в зависимости от плеера, оси, браузера и т.п. с каким-то интервалом. Интервал вам заранее не известен. Закончится ли изменение размеров - вам тоже не известно (может быть так, что и не закончится вообще, если вашими же умелыми руками в HTML странице будет скрипт "плавно меняющий" размер флешки, постоянно). Так что если вы имели в виду событие потянул-отпустил, то, в общем случае, "отпустил" может никогда не наступить, и предполагать, что оно обязательно наступит, следовательно, не логично. Логично по таймеру или в каждом новом кадре проверять не изменились ли с последнего раза размеры сцены (т.е. не произошло ли >0 событий resize), и, если да, то отрисовать сцену по-новой.
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jun 2003
Сообщений: 263
|
Цитата:
|
|
|||||
|
Регистрация: Jun 2011
Сообщений: 212
|
Событие Event.RESIZE возникает ПОСЛЕ того, как размер stage изменился.
Далее возможны 2 варианта: 1. Если отключены всевозможные настройки типа "Scale content with stage", то ПОСЛЕ ресайза stage (в момент вызова назначенного resizeHandler) ни один объект еще не изменил размер. Соответственно с ними можно делать все что угодно - программно (в теле resizeHandler). 2. Если всевозможные настройки типа "Scale content with stage" включены, то на момент вызова resizeHandler (по событию Event.RESIZE) все объекты с включенными опциями Scale уже будут изменены в размере. Причем для них событие RESIZE может и не возникнуть, так как флеш в этом случае "думает", что пользователю нужна "экранная лупа", и он (флеш) отресайзит объекты без вашего участия. |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:14. |
|
|
« Предыдущая тема | Следующая тема » |
|
|