Форум 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 с помощью AS (http://www.flasher.ru/forum/showthread.php?t=120579)

YANSEN.RU 24.01.2009 19:35

Растягивание Flash с помощью AS
 
Вложений: 1
Всем привет!
Прошу прощения за глупый вопрос, но никак не могу справиться!
Возник такой вопрос, как растянуть флеш, также как это сделано здесь...

Просто я воспользовался такой же, но рипнутой флешкой и переделал ее полностью под свой сайт... но растяжения такого у меня не получается.
Всё дело в том, что когда я растягиваю флеш средствами HTML

PHP код:

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" style="display:block"
 
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
  
id="intro" ALIGN="center"
  
width="100%" height="100%">
 <
PARAM NAME=movie VALUE="index.swf">
 <
PARAM NAME=quality VALUE=high
<
PARAM NAME=menu VALUE=false
 <
param name="allowFullScreen" value="true" />
 <
PARAM NAME=bgcolor VALUE=#000000> 
 
<EMBED src="index.swf" menu=false quality=high bgcolor=#000000  WIDTH="100%" HEIGHT="100%" NAME="intro" ALIGN="center" allowFullScreen="true" 
 
TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED>
</
OBJECT

то флеш растягивается на всю страницу, но не пропорционально, а как бы оставляет свои исходные графические размеры, просто вытягивая background + скрытые (за кадром) Layer'ы из флешки. ( показано в прикрепленном файле)
Также не работает кнопка "на всесь экран" (кнопка full_scr)!

В самой флешке есть такой скрипт:
Код AS1/AS2:

Stage.align = "TL";
Stage.scaleMode = "noScale";
load0._x = int(Stage.width / 2) + 0;
load0._y = int(Stage.height / 2) + 0;
sizeListener = new Object();
sizeListener.onResize = function ()
{
    load0._x = int(Stage.width / 2) + 0;
    load0._y = int(Stage.height / 2) + 0;
    _root.scroller._x = int(Stage.width / 2) + 2.000000E-001;
    _root.scroller._y = int(Stage.height / 2) + 7.000000E-001;
    if (Stage.height / Stage.width < picHeight)
    {
        ch_photos_mov._width = Stage.width;
        ch_photos_mov._height = picHeight * ch_photos_mov._width;
    }
    else
    {
        ch_photos_mov._height = Stage.height;
        ch_photos_mov._width = picWidth * ch_photos_mov._height;
    } // end else if
    _root.op._width = Stage.width;
    _root.op._height = Stage.height;
    _root.top_bg._width = Stage.width + 1;
    _root.bg_st._width = Stage.width;
    _root.bg_st._y = Stage.height - _root.bg_st.bott_bg.bg._height - 1;
    _root.mov_sm_ph._y = Stage.height - _root.mov_sm_ph.bg._height;
    _root.priv_mov_st._y = Stage.height - _root.priv_mov_st._height;
    _root.full_scr_mov._y = Stage.height - _root.full_scr_mov._height;
    _root.mov_tip1._y = Stage.height - _root.mov_tip1._height;
    _root.mov_sm_ph._x = int(Stage.width / 2) + 0;
    _root.mov_tip1._x = int(Stage.width / 2 - _root.mov_tip1._width / 2) + 0;
    _root.full_scr_mov._x = Stage.width - _root.full_scr_mov._width;
    _root.ss_mov._x = int(Stage.width - 119) + 0;
    _root.ch_pages._x = int(Stage.width - 675) + 0;
    _root.ch_photos_mov._x = Stage.width / 2;
    _root.ch_photos_mov._y = Stage.height / 2;
};
Stage.addListener(sizeListener);

Вопрос: как сделать так, чтобы задний фон (картинки) и вся графика пропорционально растягивалась (особенно по горизонтали) и не кавркала размеры..
Заранее спасибо!

джонатан 24.01.2009 20:53

пропорции сохранять так:
Код AS1/AS2:

my_mc._width = Stage.width;
my_mc._yscale = my_mc._xscale;



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

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