![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 30
|
Я программно меняю цвет подгружаеваемого flash клипа, цвет ессно меняется у всего клипа. Можно указать где именно надо указать цвет, а не по во всём клипе?Ведь работать с подругажаевыми mc'шками клипа нельзя из грузищего скрипта, у меня эффекта небыло никакого
так гружу swf и меняю цвет, в нем все mc'шки аттачутся, а не присуствую в клипе сразу прощу помощи, если не затруднит |
|
|||||
|
Регистрация: Oct 2005
Сообщений: 207
|
Кто сказал, что нельзя? Можно, и даже нужно!!!
НО... сначала нужно дождаться загрузки клипа. Проще всего это сделать через MovieClipLoader (стандартный пример): а только после этого обращаться к клипам. |
|
|||||
|
Banned
[+5 15.02.09]
[++5 15.02.09] Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
|
вообщето LoadInit говорит о загрузке первого кадра
![]() |
|
|||||
|
Регистрация: Oct 2005
Сообщений: 207
|
Цитата:
Оригинал: Invoked when the actions on the first frame of the loaded clip have been executed. |
|
|||||
|
Banned
[+5 15.02.09]
[++5 15.02.09] Регистрация: Mar 2008
Адрес: Krasnoyarsk
Сообщений: 587
|
Да, ты прав, а я был молод и глуп
![]() |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 30
|
По такому событию не подходит, вариант только прелоадер, но тут ваще непонимаю как работает компиллятор, вот нерабочий код, что нетак в нем?
this.but_bit_1.video_m.onRelease = function(){
F_preloader = false;
var container:MovieClip = createEmptyMovieClip("container",getNextHighestDepth());
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(this);
mcLoader.loadClip("videog/videog.swf", container);
_root.container._x = 100;
_root.container._y = 100;
F_preloader(container);
if (F_preloader) {
trace("test");
var mycolor:Color = new Color(_root.container.main_p.e_main);
rcolor = Math.round( Math.random()*0xFFFFFF );
mycolor.setRGB(rcolor);
}
}
F_preloader = function (mc){
_root.createEmptyMovieClip("detect_mc", 100);
detect_mc.onEnterFrame = function() {
var gbl = _root[mc].getBytesLoaded();
var gbt = _root[mc].getBytesTotal();
if (gbl == gbt && gbl>30) {
ttt.text = "100%";
removeMovieClip(this);
return true;
} else {
ttt.text = int(gbl/gbt*100)+"%";
return false;
}
};
};
|
|
|||||
import flash.geom.Transform;
import flash.geom.ColorTransform;
var loader:MovieClipLoader = new MovieClipLoader();
loader.addListener(this);
var container:MovieClip = this.createEmptyMovieClip('container', this.getNextHighestDepth());
container._x = 100;
container._y = 100;
var trans:Transform = new Transform(container);
var blueColorTransform:ColorTransform = new ColorTransform(0, 1, 1, 1, 0, 0, 255, 0);
btn.onRelease = function(){
loader.loadClip('videog/videog.swf', container);
}
onLoadProgress = function(mc:MovieClip, l:Number, t:Number){
if(t > 0){
txt.text = Math.round(l / t * 100) + '%';
}
}
onLoadInit = function(mc:MovieClip){
trans.colorTransform = blueColorTransform;
}
|
|
|||||
|
Регистрация: Mar 2008
Сообщений: 30
|
MrPoma спасибо что не оставил без ответа, но этот код мне говорит о том же что и qazwsx не нахожу разницу, мало опыта у меня c AS
Последний раз редактировалось 8bit; 27.04.2008 в 17:30. |
|
|||||
|
А что в этом коде страшного?
//загружаем классы для преобразования и работы с цветом
import flash.geom.Transform;
import flash.geom.ColorTransform;
//создаем лоадер
var loader:MovieClipLoader = new MovieClipLoader();
//добавляем слушателя
loader.addListener(this);
//контейнер, куда будем грузить клип
var container:MovieClip = this.createEmptyMovieClip('container', this.getNextHighestDepth());
//подбираем местечко
container._x = 100;
container._y = 100;
//создаем новую трансформацию для container
var trans:Transform = new Transform(container);
//Матрица преобразования цвета
var blueColorTransform:ColorTransform = new ColorTransform(0, 1, 1, 1, 0, 0, 255, 0);
//тыкаем на кнопке - загружаем клип
btn.onRelease = function(){
loader.loadClip('videog/videog.swf', container);
}
//когда грузим...
onLoadProgress = function(mc:MovieClip, l:Number, t:Number){
if(t > 0){ //показываем проценты
txt.text = Math.round(l / t * 100) + '%';
}
}
//когда загрузили
onLoadInit = function(mc:MovieClip){
//в трансформации меняем свойство colorTransform на заранее созданное (см. матрица преобразования цвета)
trans.colorTransform = blueColorTransform;
}
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 30
|
спасибо всем, разобрался
|
![]() |
![]() |
Часовой пояс GMT +4, время: 00:57. |
|
|
« Предыдущая тема | Следующая тема » |
|
|