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

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

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

Регистрация: Feb 2009
Сообщений: 66
По умолчанию границы на скейл

Здравствуйте)
Пытаюсь сделать картинку, которая увеличивается и уменьшается при нажатии на кнопки так, чтобы можно было только 2 раза увеличить и в этих же пределах уменьшить (меньше начального размера не может быть).

вот код, попыталась сделать так, что бы если i и m были в пределах чисел 1-2-3. Если i= 1 и 2, можно увеличить, если m = 2 и 3 можно уменьшить, но почему-то границы не работают, подскажите пожалуйста как поправить?
Код AS3:
var i = 1;
var m = 4;
if(i>0||i<3){
btn1.addEventListener(MouseEvent.MOUSE_DOWN, scaling1);}
else {btn1.removeEventListener(MouseEvent.MOUSE_DOWN, scaling1);
    map.scaleX *=1;
	map.scaleY *=1;};
if(m<4||m>1){
btn2.addEventListener(MouseEvent.MOUSE_DOWN, scaling2);}
else {btn2.removeEventListener(MouseEvent.MOUSE_DOWN, scaling2);
	map.scaleX *=1;
	map.scaleY *=1;};
 
 
function scaling1(e:MouseEvent):void{
	map.scaleX *=1.2;
	map.scaleY *=1.2;
	i++;
	m--;
	}
 
 
function scaling2(e:MouseEvent):void{
	map.scaleX *=0.8;
	map.scaleY *=0.8;
	i--;
	m++; 
	}
пробовала через while, for, do while...разницы почти никакой, результат тот же

Старый 19.04.2011, 18:15
incvizitor вне форума Посмотреть профиль Отправить личное сообщение для incvizitor Найти все сообщения от incvizitor
  № 2  
Ответить с цитированием
incvizitor
 
Аватар для incvizitor

блогер
Регистрация: Sep 2008
Адрес: Менск
Сообщений: 586
Записей в блоге: 1
Отправить сообщение для incvizitor с помощью Skype™
Код AS3:
map.scaleX = Math.max(map.scaleX * 0.8, 1);
map.scaleY = Math.max(map.scaleY * 0.8, 1);
Код AS3:
map.scaleX = Math.min(map.scaleX * 1.2, 2);
map.scaleY = Math.min(map.scaleY * 1.2, 2);
__________________
ranga

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

Регистрация: Feb 2009
Сообщений: 66
помогло, спасибо)))

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

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

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


 


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


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