Форум 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)
-   -   Заливка обьекта цветом Background'a (http://www.flasher.ru/forum/showthread.php?t=139857)

Mylton 13.05.2010 04:02

Заливка обьекта цветом Background'a
 
Делаю программную градиентную заливку клипа. Выставляю цвета.
А как указать, чтобы брался цвет фона флэшролика?
Он у меня будет менятся в html. Нужно, чтобы и цвет в градиенте менялся.

mooncar 13.05.2010 04:12

Цитата:

Сообщение от Mylton (Сообщение 907873)
Он у меня будет менятся в html.

Все зависит от способа этого "меняться". Если у вас цвет меняется в HTML тоже как-то программно, то можно одновременно передать значение этого цвета флешке в качестве параметра flashvars при публикации для дальнейшего использования при создании вашего градиента.

Mylton 13.05.2010 12:25

Вообще он и вправду будет менятся программно. Но хотелось бы и ручками без передачи параметров.
Чтобы он просто считывал цвет фона в данный момент.

mooncar 13.05.2010 19:43

Цитата:

Сообщение от Mylton (Сообщение 907915)
Чтобы он просто считывал цвет фона в данный момент.

Можно и "считывать".
С помощью метода ExternalInterface.call вызываете из флешки JavaScript функцию, которая считывает цвет фона (document.bgColor).

rainbowrussia 14.05.2010 02:16

Цитата:

Сообщение от mooncar (Сообщение 908034)
Можно и "считывать".
С помощью метода ExternalInterface.call вызываете из флешки JavaScript функцию, которая считывает цвет фона (document.bgColor).

Флешка может находиться на фоне, отличном от bgColor.

mooncar 14.05.2010 02:25

Это автору виднее, но он уже замолчал. А вообще много что может быть. Вариантов решений столько же, сколько неуточненных технических обстоятельств и пожеланий автора.

Mylton 14.05.2010 22:06

Ну на самом деле тут все просто. Я пытаюсь понять, как правильно реальзовать.

Код AS1/AS2:

_root.createEmptyMovieClip("korob",_root.getNextHighestDepth());
colors = [0x444444, 0xffffff];
alphas = [0, 100];
rat = [0, 255];
matrix = {matrixType:"box", x:200, y:200, w:100, h:100, r:0};
with (korob) {
        //lineStyle(1,0x00E644);
        beginGradientFill("linear",colors,alphas,rat,matrix);
        moveTo(200,200);
        lineTo(300,200);
        lineTo(300,300);
        lineTo(200,300);
        korob.endFill();
}

Где мне вместо цветов нужно подставить BGCOLOR флэш-ролика.
Скажите, что лучше через Java. Буду пытаться реализовать так. Скажите, что есть такое в AS. То я лучше сделаю через AS.
Просто мне очень нужна консультация.

mooncar 14.05.2010 23:19

Что вы подразумеваете под "BGCOLOR флэш-ролика"? Цвет фона основной сцены выставлятся при публикации с помощью параметров. Насколько мне известно у Stage нет свойства BGCOLOR.
Если нужно простое решение, передавайте значения цвета при публикации с помощью flashvars.
Ведь откуда-то значение этого цвета должно взяться при публикации? Вот и во flashvars засуньте, и используйте во флешке.

Mylton 16.05.2010 21:17

Спасибо, Mooncar, так и сделаю.


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

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