Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Ресайзинг, пружининг ну и резиниг :)))
Flash Zone Forum > Macromedia Flash > Общие вопросы
Flashery
Мы тут ломаем голову с тихо и еще парой людей, так и не придумали норм решения.

Кто знает подскажите.

Вообщем есть 3 фон картинки 1600*1200., 1280*1024 и 1024*768. разрешениями.
Нужно чтобы флеш проверял разрешение монитора пользователя и выставлял нужную картинку. Как это сделать ясно.
Но осн суть вот в чем :

Раз картинка меняется то должна и сцена менятся - соотв. Тоесть смысл таков что фоновая картинка должна становится на весь экран пользователя.

Кроме всего есть осн контент ( мс, графики и прочее). который не ресайзится а находится в центре всегда разрешением 800*600. ( для любого монитора).

Тихо предложил выход. Делать флеш (800*600). под альфу. А картинки менять через JS как фоновые html.

Но нам бы хотелось чтобы с этой картинкой можно было роизводит анимацию ( альфа, брайтнсс и т.д) тоесть JS сразу отпадает.

ПОМОГИТЕ КТО ЗНАЕТ
tiHo
как я тебе в аське говорил:

тебе нужно проверять через jscript, а флешку делать с прозрачным фоном. а чтобы картинки грузились через jscript как фон html страницы. а центрирование самой флешки сделай middle и лучше помести в единственную ячейку таблицы с параметрами valign=center align=center
Flashery
Саш почитай пост выше внимательно. обрати внимание на посл сторчку. там написано то через джеэс нельзя потому что я буд работать через флеш с этой картинкой на фильтры и анимацию
tiHo
smile.gif я каквсегда втему
nikitar
tiHo, это же тоже шутка!
Как вот эта /forum/index.php?showtopic=2352

Цитата
там написано то через джеэс нельзя потому что я буд работать через флеш с этой картинкой на фильтры и анимацию

Так и не понял, почему через js нельзя.
Flashery
А как ты будешь через js анимацией управлять мне интересно ? или ты что то новое выдумал в мире флеш ? Может у нас теперь не из js посылаются данные а из влеш в js, или наоборот... Ну ка расскажи теорию. Оч интересно.

ПРостая здача мы подгружем фон с помощью js в HTML background , и нужно из флеща его редактировать этот фон.

ИННОВАЦИЯ!!! - где она ? smile.gif
MustLive
Цитата
это же тоже шутка!

Да, nikitar, он большой шутник smile.gif

Цитата
Может у нас теперь не из js посылаются данные а из влеш в js, или наоборот... Ну ка расскажи теорию. Оч интересно.

Flashery

FlashJavascriptGateway (также известный как JavaScript and Flash Integration Kit) - это решение твоей проблемы. Инновация о которой ты мечтал, разработанная ещё Macromedia в 2005 году.

Позволяет передавать данные из AS в JS и из JS в AS. Цитата из описания: The JavaScript and Flash Integration Kit allows developers to get the best of the Flash and HTML worlds by enabling JavaScript to invoke ActionScript functions, and vice versa.

Так что вместо того чтобы шутить на форуме, почитай про JavaScript and Flash Integration Kit.
nikitar
Цитата
Может у нас теперь не из js посылаются данные а из влеш в js, или наоборот...

Можно и так и так. И из flash-ролика в javascript и из javascript'a во flash ролик. Ничего тут нового нет, всё давно известно.
Rohan
я че-то в сабж не въехал...
Кто вам мешает сделать Stage.scaleMode = "noScale"; Stage.align = "TL";
подписать слушателя на ивент ресайза стейджа, смотреть при этом на его высоту и ширину. Ставить нужную картинку, стрейчить ее если надо, а контент опять же тупо программно ставить по центру. В чем проблема?
Flashery
Rohan если несложно напиши как все это в АС выглядет буду оч благодарен. Заранее спасибо
Rohan
создаем документ, кидаем на рут два мувиклипа (градиентных каких-нить прямоугольника, например). Потом можно будет заменить их на программно подгружаемые картинки и т.д. Один называем bg, второй - content. Первый будет растягиваться на весь экран, второй торчать по центру. В первом кадре пишем код:
Код
Stage.scaleMode = "noScale";
Stage.align = "TL";

var listener:Object = {};
listener.onResize = function():Void {
    _root["bg"]._x = 0;
    _root["bg"]._y = 0;
    _root["bg"]._width = Stage.width;
    _root["bg"]._height = Stage.height;
    
    _root["content"]._x = (Stage.width - _root["content"]._width)/2;
    _root["content"]._y = (Stage.height - _root["content"]._height)/2;
}
Stage.addListener(listener);
listener.onResize();

запускаем, должно работать. Не знаю, будет ли работать так, как надо, так как, повторюсь, сабж я понял не до конца )
Flashery
А после прелоадера можно написать или нет ? или вместе можно писать ?
Русская версия IP.Board © 2001-2009 IPS, Inc.