Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Выравнивание объектов при ресайзе, резиновый Flash (http://www.flasher.ru/forum/showthread.php?t=122019)

wadada 28.02.2009 18:14

Выравнивание объектов при ресайзе, резиновый Flash
 
Здравствуйте, делаю резиновый ролик, со следующим кодом:

Код AS1/AS2:

Stage.scaleMode = "noScale"; Stage.align = "BL";
 
var stageListener:Object = new Object();
stageListener.onResize = function() {
 
 
hood._y = Stage.height - 100 - hood._height;
 
rock._x = Stage.width - 1 - rock._width;
}
Stage.addListener(stageListener);
stageListener.onResize();

проблема в следующем, как сделать что бы обьект "hood" при ресайзе всегда отступал он верхнего правого угла, если выравнивание у меня идет по BL?

Fatality 28.02.2009 19:14

Код AS1/AS2:

hood._x = Stage.width - hook._width;
hood._y = Stage.height - hook._height;

Чем вас такой вариант не устраивает ?

wadada 28.02.2009 19:19

такой вариант не работает.
обьект вообще смещается в правый нижний угол и при ресайзе ведет себя крайне статично))

fljot 28.02.2009 19:26

вот ставим в ВПУ
Код AS1/AS2:

nood._x = Stage.width;
nood._y = originalStageHeight - Stage.height;

, где originalStageHeight это высота сцены в проекте (при компиляции т.е.).. несложно ведь?

wadada 28.02.2009 19:40

не работает...опять слетает обьект далеко
вопрос в целом в том, что бы отвязать данный обьект от BL и привязать к TL а остальные обьекты что бы остались привязаными в BL

fljot 28.02.2009 19:45

ну так надо ещё вычесть по х ага?

wadada 28.02.2009 20:07

без толку, привязка остается к BL и поскольку обьект расположен в левом верхнем,то при изменении окошка уезжает за пределы видимости...

fljot 28.02.2009 21:17

не морочьте голову) всё работает
Код AS1/AS2:

Stage.scaleMode = "noScale";
Stage.align = "BL";
 
onResize = function() {
        hood._x = Stage.width;
        hood._y = 400 - Stage.height;
}
Stage.addListener(this);
onResize();

400 - это высота сцены проекта по-умолчанию

wadada 28.02.2009 21:46

проблема решена, спасибо огромное! обошлость даже без width)))

inco_nj 12.01.2011 12:43

У меня при публикации объект _bg_right крепится к правому краю флэхи с небольшим отступом, хотя должен крепиться без каких бы то ни было зазоров, а при ресайзе вдруг встаёт на место.
Код AS1/AS2:

Stage.scaleMode = "noScale";
Stage.align = "MC";
 
_bg_right.onResize = function() {
        _bg_right._x = Stage.width/2 + _bg_right._height + 200;
        _bg_right._y = Stage.height/2;
}
 
Stage.addListener(_bg_right);
_bg_right.onResize();

Добавлено через 21 минуту
Заменил _bg_right._height + 200 на конкретное число, и всё исправилось. Но вот объясните мне принцип действия формулы! Я так понимаю, что у при формуле _bg_right._y = Stage.height/2; отсчитывается как половина текущей высоты флэшки, то есть должно быть центрирование по середине, а у меня при МС клип крепится к нижнему краю!


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

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