Просмотр полной версии : Видимость слоя
можно ли динамически сделать слой невидимым?
Можно делать вместо слоёв мувик и пихать в него всё что нужно, а уже его делать не видимым ...
Можно делать вместо слоёв мувик и пихать в него всё что нужно, а уже его делать не видимым ...
да, но он выводится поверх всех слоёв.....а мне нужно чтобы он выводился под всеми слоями
Всё зависил от того каким образом ты все свои мувике на сцене располагаешь , тот мувик у которого глубина больше тот и будет сверху ... короче просто задай своим мувикам нужные глубины ...
вот, я не могу понять.
есть слой с объектом,
пишу код
this.createEmptyMovieClip("trajectory_init", 12);
trajectory_init.lineStyle(1, 0x207ad8, 99);
trajectory_init.moveTo(0, 0);
trajectory_init.lineTo(Stage.width, Stage.height);
я указала глубину 12, а линия рисуется поверх объекта, а нужно чтобы наоборот, что делать?
У тебя линия рисуется в мувике trajectory_init, а он у тебя на 12 уровне, и если ты хочешь разместить его под мувиками созданными ручками на сцене, то попробуй задать отрицательную глубину , например -10000
всё равно рисуется поверх всего(((
Давай исходник мне не совсем понятно что поверх чего рисуется ...
клип
один слой, в нём размещаю символ с кружёчком например,
а в кадре пишу
Draw_trajectory_Init();
function Draw_trajectory_Init() {
createEmptyMovieClip("trajectory_init", -10000);
trajectory_init.lineStyle(1, 0x207ad8, 99);
trajectory_init.moveTo(0, 0);
trajectory_init.lineTo(Stage.width, Stage.height);
this.attachMovie(trajectory_init,trajectory_init,1);
}
всё
1) в ActionScript название функций и переменных принято называть с маленькой буквы, разделяя слова большой
пример : drawTrajectoryInit()
2) я не фига не понял что делаеть. зачем сначала создаеться мувик, и откуда мы его атачим ?
у меня есть подозрение что вы просто хотите нарисовать линию. если я прав то так
function drawLine(target:MovieClip,x1:Number,y1:Number,x2:Number,y2:Number,col:Number):MovieClip {
var result:MovieClip = target.createEmptyMovieClip("line"+getTimer()+"_mc",target.getNextHighestDepth());
result.lineStyle(1, col, 100 );
result.moveTo(x1,y1);
result.lineTo(x2,y2);
return result;
}
используем соответственно так
var myLine:MovieClip = drawLine(_root,0,0,Stage.width,Stage.height, 0x207ad8 );
да, но так , чтобы эта линия была подо всем , что я уже статически создано
т.е. чтобы слой , где линия динамически рисуется находился под всеми моими статическими слоями
линия перечёркивает все объекты, которые статически созданы
MovieClip.swapDepths() (http://novemberain.com/livedocs/Help/ActionScriptLangRef/00001556.html)
убедительная просьба читать документацию. желательно полностью
а в чём прикол? когда я делаю так
this.createEmptyMovieClip("trajectory_init", _root.getDepth()-1);
т.е. глубина отрицательгная, то
trajectory_init.removeMovieClip(); не работает?
нельзя удалять мувики с отрицательной глубины, сначала надо задать положительную
а в чём прикол? когда я делаю так
this.createEmptyMovieClip("trajectory_init", _root.getDepth()-1);
т.е. глубина отрицательгная, то
trajectory_init.removeMovieClip(); не работает?
Именно потому, что глубина отрицательная. На этих уровнях расположены объекты, сунутые на сцену в редакторе. К ним программный ремув неприменим. Просто переставь на положительную свободную глубину и убивай.
_root.createEmptyMovieClip("trajectory_init", _root.getDepth()-1);
trajectory_init.swapDepths(_root.getNextHighestDepth());
trajectory_init.removeMovieClip();
так ?
просто мне нужно, чтобы всё что рисуется в слое trajectory_init было на заднем плане, за тем, что было "сунуто" на сцену в редакторе
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.