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

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

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

Регистрация: Nov 2010
Сообщений: 16
По умолчанию Проблема при масштабировании компонента с внутренними компонентами

Вообщем, есть главное окно в него добавляется компонент, в котором есть фон и кнопки. фон и кнопки представляют собой images с графикой..

В главном окне при Resize вычисляю параметры scaleX, scaleY и задаю их соответствующим свойстам основного компонента.

Итог. размер окна компонента и всех его кнопок изменяется в соответствии с установленными ScaleX, ScaleY. Но вот беда. кнопки внутри компонента смещаются на 0 - 2 пикселя по всем сторонам по каким-то своим законам. Получается что кнопки внутри панели уже не стоят на своих местах, а есть некрасивые полосы сдвигов.

При ScaleX = 1 и ScaleY = 1 никаких проблем снова нет. Подскажите плиз решение. Поиски по форуму не увенчались успехом.

Есть вариант места кнопок частично заполнить фоном кнопок и тогда заметно ничего не будет. но можно ли просто правильно позиционировать и масштабировать объекты внутри компонента. Спасибо!

Старый 14.12.2012, 10:53
NAO111 вне форума Посмотреть профиль Отправить личное сообщение для NAO111 Найти все сообщения от NAO111
  № 2  
Ответить с цитированием
NAO111

Регистрация: Oct 2009
Сообщений: 155
А объект масштабируешь пропорционально? Возможно в этом и есть проблема.

Старый 14.12.2012, 11:48
Korchy вне форума Посмотреть профиль Отправить личное сообщение для Korchy Найти все сообщения от Korchy
  № 3  
Ответить с цитированием
Korchy
 
Аватар для Korchy

Регистрация: May 2011
Сообщений: 301
Записей в блоге: 2
Координаты задаются как Number? Если да - попробуйте округлять до кратного 0.25 или для простоты задать в целых числах.
__________________
interplanety

Старый 14.12.2012, 23:36
WarShumer вне форума Посмотреть профиль Отправить личное сообщение для WarShumer Найти все сообщения от WarShumer
  № 4  
Ответить с цитированием
WarShumer

Регистрация: Nov 2010
Сообщений: 16
координаты width и height неизменны, меняются только scaleX scaleY. Внутренние объекты вообще не трогаю. масштаюируются вместе с компонентом;
координаты внутренних кнопок задаются целым числом.

Добавлено через 1 минуту
да, объект масштабируется пропорционально по одной стороне.

Добавлено через 6 минут
Код AS1/AS2:
				var varScaleX:Number;
				var varScaleY:Number;
				varScaleX = stage.stageWidth / bcPanel.width;
				varScaleY = stage.stageHeight / bcPanel.height;
				if (varScaleX > varScaleY) {
					varScale = varScaleY;
				} else {
					varScale = varScaleX;
				}
				bcPanel.scaleX = varScale;
				bcPanel.scaleY = varScale;
				sx = int((stage.stageWidth - bcPanel.width * varScale) /2);
				sy = int((stage.stageHeight - bcPanel.height * varScale) /2);
				bcPanel.x = sx;
				bcPanel.y = sy;

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

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

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


 


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


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