PDA

Просмотр полной версии : Загрузка swf с библиотекой.


OracleN
02.05.2007, 16:08
Вопрос значит такого плана.
Есть одна swf там у нее в библиотеке находится alert и при открытии вызвается диалоговое окно, т.е. все нормально.

Но вот когда загружаю эту swf в другую swf (loadMovie) то окно это при загрузке не показывается. Почему требудется загружать Alert компонент во флэшь которая производит загрузку. Почему не достаточно его наличие только в загружаемой флэш?

lowka
02.05.2007, 17:36
Вы хотите получить доступ к компонентам, находящихся во внешних swf(создавать экземпляры и проч. без добавления их в главный мувик), или просто хотите из первой swf работать со второй?
Если первое, то вам необходимо написать по оболочке на каждый компонент и поместить их в шарную либу, которую уже и подключать к главному swf.
Если второе то, определите методы во второй swf и загрузщик будет их вызывать.

iNils
02.05.2007, 17:37
Как именно вы показываете алерт?

OracleN
02.05.2007, 17:44
Вообще идея какова - не грузить лишние компоненты в главном мувике.
Т.е. сам алерт нужен в 60% т.е. в 40% он не нужен, а место в swf занимает. те. если нужно показать алерт то будет подгжуаться мувик с алертом и он будет показываться.

Как я его показываю.
1. Добавлюя компонент в либ.
и затем функция:

import mx.controls.Alert;

function alert(inText) {
var wnd = Alert.show(inText, "Системное Сообщение", Alert.OK , _root, '', "", Alert.CANCEL);

wnd.move((Stage.width - wnd._width)/2,(Stage.height - wnd._height)/2);

txt = wnd.content.text_mc.label;
txt.autoSize = 'center';
txt.allowSize = false;
txt.html = true;
txt.htmlText = txt.inText;
}

(это все в подгружаемом мувике)

Вы хотите получить доступ к компонентам, находящихся во внешних swf(создавать экземпляры и проч. без добавления их в главный мувик), или просто хотите из первой swf работать со второй?
Если первое, то вам необходимо написать по оболочке на каждый компонент и поместить их в шарную либу, которую уже и подключать к главному swf.
Если второе то, определите методы во второй swf и загрузщик будет их вызывать.

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

iNils
02.05.2007, 17:52
Alert вы куда аттачите, в тот клип в который загрузили свф или в тот, который загрузили?

OracleN
02.05.2007, 17:55
Alert вы куда аттачите, в тот клип в который загрузили свф или в тот, который загрузили?

Тот который я загружаю, в том и идея чтобы атачить его в загружаеамый а не в главный.

etc
02.05.2007, 20:25
Это невозможно.

iNils
02.05.2007, 21:04
в том и идея чтобы не атачить его в загружаеамый а не в главный.Ну если его ни куда аттачить не надо, то зачем тему создали? :mosking:

etc
02.05.2007, 21:38
Какое-то из «не» явно лишнее.

lowka
02.05.2007, 22:23
Пример с Alert'ом. В первом файле либа, во втором классы и сам пример.

OracleN
03.05.2007, 11:51
Пример с Alert'ом. В первом файле либа, во втором классы и сам пример.

Во то что надо, но только реально как то не тревиально это получается, чтобы сделать такой элементарный ход понадобилось аж 6 файлов создавать.
Спасибо.

iNils
03.05.2007, 11:55
6? Вы классы, что ли тоже считаете?

OracleN
03.05.2007, 12:00
6? Вы классы, что ли тоже считаете?
Да какбы да, я просто думал что реально все проще должно быть. Т.е. при загрузке новых мувиков, должны с ними и подргужать все компоненты из либы, и чтобы никакой парки не было с написанием библиотек и т.д.