Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 29.11.2012, 15:20
dimensb вне форума Посмотреть профиль Отправить личное сообщение для dimensb Найти все сообщения от dimensb
  № 1  
Ответить с цитированием
dimensb

Регистрация: Jun 2012
Сообщений: 16
Question stage.stageWidth меньше stage.width при stage.scaleMode = StageScaleMode.SHOW_ALL

Здравствуйте.

Пытаюсь использовать
Код AS3:
stage.scaleMode = StageScaleMode.SHOW_ALL
для масштабирования приложения, но вижу лишь увеличенную часть изображения.

--

Процесс загрузки приложения происходит следующим образом:
1. Загружается preloader
2. Preloader загружает основной код
3. Который, в свою очередь, загружает ресурсы в виде изображений, дополнительных swf и отрисовывает главное окно приложения.

Максимальный размер ресурса, который загружается на 3-м этапе - 1600х900, при масштабировании просто хотел положиться на stage.scaleMode = StageScaleMode.SHOW_ALL, однако, в процессе загрузки, вижу что

Код AS3:
stage.width =  1632
stage.stageWidth =  500
stage.height =  902.95
stage.stageHeight =  375
и на весь экран отображается лишь часть изображения.

Ниже представлены 2 изображения, не из приложения, просто чтобы дать представление о том, как это выглядит:
1. Название: 160x90.gif
Просмотров: 2682

Размер: 1.9 Кб
2. Название: 50x37.gif
Просмотров: 2762

Размер: 1.4 Кб

В html и js файлах, используемых для загрузки, width = height = 100%.
Пробовал загрузку в разных браузерах, результат одинаков.

Судя по всему размер 500x375 является размером по умолчанию, которую использует mxmlc (http://livedocs.adobe.com/flex/3/htm...pilers_13.html, опция default-size)

Если я правильно понимаю значения stage.stageWidth и stage.stageHeight, то они должны соответствовать максимальному размеру дочерних объектов. Такое поведение можно наглядно наблюдать в примере http://theactionscripter.com/2009/05...tagewidth.aspx (можно открыть его в отдельном окне, тогда будет видно что stageWidth совпадает с размером экрана http://theactionscripter.com/files/3...stagewidth.swf)

Если установить тэг компилятора
Код AS3:
[SWF(width="1600", height="900")]
, то окно отрисовывается верного размера, но, при этом, не масштабируется, а ведет себя как при NO_SCALE.

Понимаю, что можно использовать совместное решение установки тэга и установки
Код AS3:
stage.scaleMode = StageScaleMode.NO_SCALE
+ обрабатывать изменения размера самостоятельно, но хотелось бы добиться этого встроенными средствами.

Возможно кто-то сталкивался с похожей ситуацией и знает решение проблемы.

Заранее спасибо.

Создать новую тему   Часовой пояс GMT +4, время: 23:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
stage scaling , Stage.scaleMode , масштабирование , размер окна
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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