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

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

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

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

Приветствую.
мне нужно сделать прилипание градиента к краю окна, то есть к нижней границе, чтобы градиент не зависимо от разрешения экрана\размера окна ВСЕГДА был внизу, можно ли это организовать средствами только AS ?


Последний раз редактировалось Archi_xxx; 09.06.2010 в 19:37.
Старый 09.06.2010, 19:47
djken вне форума Посмотреть профиль Отправить личное сообщение для djken Посетить домашнюю страницу djken Найти все сообщения от djken
  № 2  
Ответить с цитированием
djken
 
Аватар для djken

Регистрация: May 2010
Адрес: Краснодар
Сообщений: 182
Отправить сообщение для djken с помощью ICQ Отправить сообщение для djken с помощью Skype™
Конечно можно.
Например ваш градиент запихиваете в мувик под названием gradient, а на первом кадре вешаем код:
Код AS1/AS2:
Stage.align="TL";
Stage.scaleMode="noScale";
 
funcResize=function(){
	gradient._y=Stage.height-gradient._height;
	}
var myListener:Object = new Object();
myListener.onResize = function() {
	funcResize();
};
Stage.addListener(myListener);
funcResize();

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

Регистрация: Apr 2009
Сообщений: 38
спасибо, разбираюсь.

кпримеру хочу щас прилипнуть к левому краю, но дело в том что сама флешка уже отцентрована
Код AS1/AS2:
Stage.scaleMode = "noScale";
Stage.align = "T";
посему новый Stage.align влияет на саму флешку, мне нужно выравнивание только для мувика, не подскажете?

Старый 10.06.2010, 00:12
djken вне форума Посмотреть профиль Отправить личное сообщение для djken Посетить домашнюю страницу djken Найти все сообщения от djken
  № 4  
Ответить с цитированием
djken
 
Аватар для djken

Регистрация: May 2010
Адрес: Краснодар
Сообщений: 182
Отправить сообщение для djken с помощью ICQ Отправить сообщение для djken с помощью Skype™
Например изначальные размеры вашего компилируемого SWF файла 550x400 и нужно чтобы gradient по оси X всегда был слева - у границы окна при Stage.align = "T":
Код AS1/AS2:
Stage.scaleMode = "noScale";
Stage.align = "T";
 
funcResize=function(){
	gradient._x=0-(Stage.width-550)/2;
	}
var myListener:Object = new Object();
myListener.onResize = function() {
	funcResize();
};
Stage.addListener(myListener);
funcResize();
Ну это не удобно когда Stage.align = "T", так как при изменении размеров окна плеера начало координат меняет свое положение.
Если вам нужно центровать флэшку, то легче просто внутри все объекты центровать с помощью _x и _y, при Stage.align="TL";


Последний раз редактировалось djken; 10.06.2010 в 00:14.
Старый 10.06.2010, 01:13
Archi_xxx вне форума Посмотреть профиль Отправить личное сообщение для Archi_xxx Найти все сообщения от Archi_xxx
  № 5  
Ответить с цитированием
Archi_xxx

Регистрация: Apr 2009
Сообщений: 38
Спасибо огромное, все работает!
для нижней границы окна у меня получилось так (при Stage.align = "T")

Код AS1/AS2:
funcResize=function(){
	gradient._y=980-(Stage.height-1000)/-1; //работает правильно именно с -1 , не могу понять почему
	}
var myListener:Object = new Object();
myListener.onResize = function() {
	funcResize();
};
Stage.addListener(myListener);
funcResize();

Старый 10.06.2010, 13:52
djken вне форума Посмотреть профиль Отправить личное сообщение для djken Посетить домашнюю страницу djken Найти все сообщения от djken
  № 6  
Ответить с цитированием
djken
 
Аватар для djken

Регистрация: May 2010
Адрес: Краснодар
Сообщений: 182
Отправить сообщение для djken с помощью ICQ Отправить сообщение для djken с помощью Skype™
Сами себя путаете такой формулой )) Все проще...
Stage.align = "T" означает, что начало координат всего вашего SWF по оси Y будет всегда совпадать с верхней границей окна флэшплеера - не зависимо от его размеров.
Следовательно, чтобы gradient, например, лежал всегда на нижней границе достаточно написать:
Код AS1/AS2:
gradient._y=Stage.height-gradient._height;
вот и все =)
Если нужно чтобы gradient, например, высовывался из нижней границы на 20px, то пишем:
Код AS1/AS2:
gradient._y=Stage.height-20;


Последний раз редактировалось djken; 10.06.2010 в 13:54.
Создать новую тему Ответ Часовой пояс GMT +4, время: 12:26.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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