![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2006
Сообщений: 16
|
Кажется разобрался.
Изначально у меня было так: 1. в бибилиотеке находятся: ScrollPane, mcEmpt (с линками) 2. в тайм лайн основной сцены: this.createObject("ScrollPane", "csp", this.getNextHighestDepth());
csp.setSize(Stage.width,Stage.height);
csp.move(0,0, true);
csp.contentPath = "mcEmpt";
var doc:XML = new XML(); // Источник данных
var mcLines:MovieClip = this;
// ^ Люблю работать с именованными указателями
// хотя можно и так: var mcLines:MovieClip = this.createEmptyMovieClip("mcLines", this.getNextHighestDepth());
// и дальше использовать mcLines как использовал c учетом более глубокой вложенности. В общем это не проблема отрисовки полос прокрутки в ScrollPane.
trace(targetPath(this)); // _level0.csp.spContentHolder
trace(targetPath(mcLines)); // _level0.csp.spContentHolder или _level0.csp.spContentHolder.mcLines если через this.createEmptyMovieClip
doc.onLoad = function (success:Boolean)
{
// Рисуем линиии на мувике mcLines черным цветом с прозрачностью 50% и минимальной толщиной
drawLines(mcLines, 0x000000, 50, 0);
};
Теоретически, чтобы решить проблему, необходимо вызвать метод redraw у компонента скролПане после прорисовки. Правильно было бы использовать событие complete того же скролПане. Однако оно (событие) не срабатывает. Вот код который я добавил в таймлайн основной сцены для обработки события: var cspCompleteListener:Object = new Object();
cspCompleteListener.complete = function() {
trace("Загрузка завершена."); // Это сообщение не появляется
};
csp.addEventListener("complete", cspCompleteListener);
... // Рисуем линиии на мувике mcLines черным цветом с прозрачностью 50% и минимальной толщиной ... mcLines._parent.redraw(true); // Или mcLines._parent._parent.redraw(true); если mcLines через this.createEmptyMovieClip ... Вопрос знатокам: почему может не работать событие complete? |
![]() |
Часовой пояс GMT +4, время: 02:50. |
|
|
« Предыдущая тема | Следующая тема » |
|
|