Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   установка ширины высоты флешки (http://www.flasher.ru/forum/showthread.php?t=129521)

СлаваRa 03.09.2009 19:13

ну я этого и имел ввиду, просто не знал как правильно это сказать,... спасибо, за более понятное дополнение к теме

random13 03.09.2009 20:00

Цитата:

Сообщение от evg1605 (Сообщение 848006)
Кстати (к слову) необязательно менять размер элемента куда встраивается флешка, можно изменить размеры самого Object-а, т.е. искать по document.getElementById не 'myAlternativeContent' а идентификатор флешного объекта, вроде в 4 браузерах проверял - работает и можно не выставлять изначально размеры как 100% , 100%.

вопрос: в четырех это в каких?

что то у меня ощущение что метод не совсем верный

evg1605 03.09.2009 20:19

IE8, IE6, последние версии (релизы) Opera, FF, Chrome
даже в пяти получается :)
ощущение такое же в начале было

random13 03.09.2009 20:29

а сафарик, у него там свои всегда заморочки

СлаваRa 03.09.2009 21:16

в сафари и в хроме один движок используется, будет работать, вы попробовали, то что мы вам посоветовали?

alatar 04.09.2009 00:09

Размер вашей флешки это stage.stageWidth и stage.stageHeight, при условии, что stage.scaleMode = StageScaleMode.NO_SCALE

random13 04.09.2009 11:43

Цитата:

Сообщение от alatar (Сообщение 848105)
Размер вашей флешки это stage.stageWidth и stage.stageHeight, при условии, что stage.scaleMode = StageScaleMode.NO_SCALE

отлично, чуть сдвинулись,

с помощью flashvars установил значения из JS
Код AS3:

stage.showDefaultContextMenu = false;
stage.scaleMode = "noScale";
stage.stageWidth = windowSize.width;
stage.stageHeight = windowSize.height;

все хорошо кроме одного, на главной сцене у меня лежат два объекта отобажения, внутри них еще туча всяких обеъктов, и них указаны координаты, раньше пока я устанавливал размеры окна статически все стояло на своих местах, сейчас же почему то все сдвинуто вправо с чем это связано?

Obi 04.09.2009 12:05

Вобщем ну совсем не вижу проблемы. Жаваскриптой устанавливайте нужные размеры флеш-элемента на основе разрешения монитора пользователя ( ну или на основе чего-нибудь другого).

И в режиме stage.scaleMode = StageScaleMode.NO_SCALE переменные stage.stageWidth и stage.stageHeight содержат реальные размеры окна, которые были проставлены в html.

UPD: Извиняюсь, уже ответили :) Не обновил страничку перед написанием ответа :(

Добавлено через 5 минут
Код AS3:

stage.stageWidth = windowSize.width;
stage.stageHeight = windowSize.height;

Это что такое?

Gaen 04.09.2009 12:16

Зачем так сложно?

stage.stageWidth и stage.stageHeight показывают текущие размеры html-контейнера, в котором находится флэшка.

Вот простой пример:

Код AS3:

//Отключаем масштабирование
this.stage.scaleMode = 'noScale';
 
//Отключаем центрирование, включаем выравнивание по левому верхнему углу
this.stage.align    = 'TL';
 
//Рисуем квадрат
 
var sqr:Sprite        =        new Sprite();
 
sqr.graphics.beginFill(0x000000);
 
sqr.graphics.drawRect(0, 0, 50, 50);
 
this.addChild(this.sqr);
 
//Ставим его в правый нижний угол
this.stageResize();
 
//Вешаем обработчик на изменение размеров сцены
this.stage.addEventListener(Event.RESIZE, this.stageResize);
 
//При ресайзе сцены - обновляем координаты квадрата, чтобы он оставался в правом нижнем углу
function stageResize(e:Event = null):void{
 
        const indent:Number = 10;
 
        this.sqr.x = this.stage.stageWidth  - this.sqr.width  - indent;
        this.sqr.y = this.stage.stageHeight - this.sqr.height - indent;
 
}//stageResize


random13 04.09.2009 12:20

Цитата:

Сообщение от Obi (Сообщение 848173)
Вобщем ну совсем не вижу проблемы. Жаваскриптой устанавливайте нужные размеры флеш-элемента на основе разрешения монитора пользователя ( ну или на основе чего-нибудь другого).

И в режиме stage.scaleMode = StageScaleMode.NO_SCALE переменные stage.stageWidth и stage.stageHeight содержат реальные размеры окна, которые были проставлены в html.

UPD: Извиняюсь, уже ответили :) Не обновил страничку перед написанием ответа :(

Добавлено через 5 минут
Код AS3:

stage.stageWidth = windowSize.width;
stage.stageHeight = windowSize.height;

Это что такое?

Код AS3:

windowSize.width windowSize.height

это мои flashvars их же устанавливаю и в embedSWF как ширину и высоту...

ну а здесь их присваиваю для того чтоб флеш сам знал размеры или я не правильно что то понял?

Добавлено через 2 минуты
Цитата:

Сообщение от GAIKER (Сообщение 848179)
Зачем так сложно?

stage.stageWidth и stage.stageHeight показывают текущие размеры html-контейнера, в котором находится флэшка.

Вот простой пример:

Код AS3:

//Отключаем масштабирование
this.stage.scaleMode = 'noScale';
 
//Отключаем центрирование, включаем выравнивание по левому верхнему углу
this.stage.align    = 'TL';
 
//Рисуем квадрат
 
var sqr:Sprite        =        new Sprite();
 
sqr.graphics.beginFill(0x000000);
 
sqr.graphics.drawRect(0, 0, 50, 50);
 
this.addChild(this.sqr);
 
//Ставим его в правый нижний угол
this.stageResize();
 
//Вешаем обработчик на изменение размеров сцены
this.stage.addEventListener(Event.RESIZE, this.stageResize);
 
//При ресайзе сцены - обновляем координаты квадрата, чтобы он оставался в правом нижнем углу
function stageResize(e:Event = null):void{
 
        const indent:Number = 10;
 
        this.sqr.x = this.stage.stageWidth  - this.sqr.width  - indent;
        this.sqr.y = this.stage.stageHeight - this.sqr.height - indent;
 
}//stageResize



спасибо за пример, наконец разобрался!!! и всем остальным тож спасиб помогли в полном непонимании


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

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