Просмотр полной версии : Адреса мувиков... а может и не в них дело...
rockerror
03.07.2009, 22:03
Дамы и Господа флэшеры)
Еще один вопрос от новичка...
Создал в библиотечке мувик. Далее внутри другого мувика вставил его вот так:
this.attachMovie("foto006lm", "006lm", this.getNextHighestDepth(0), {_x:0, _y:-345});
Вставка работает, все отлично. проблема в следующем внутри вставляемого мной мувика есть кнопочка с идентификатором close006l эта кнопочка должна закрывать вставляемый кодом выше мувик. Соответственно далее пишу:
this.foto006lm.close006l.onPress = function() {
removeMovieClip(this.foto006lm);
};
Но этот гад не закрывается((( Думается я с адресами что-то накосячил... Подскажите где косяк? :quiet:
this.foto006lm.close006l.onPress = function() {
removeMovieClip(this.foto006lm);
};
внутри функции при вызове литенера _this_ указывает на close0061
rockerror
03.07.2009, 22:44
Хмм... попробовал писать:
this.foto006lm.close006l.onPress = function() {
removeMovieClip(_root.malgal.foto006lm);
};
Ибо В _root есть мувик malgal в который я собсно и загружал мувик foto006lm... все-равно не работает... Как правильно написать адрес в данном случае? А у кнопки адрес правильно в данном случае?
Добавлено через 22 минуты
Хммм... полазил по форуму... Говорят правильно писать:
this.foto006lm.close006l.onPress = function() {
_root.malgal.foto006lm.removeMovieClip();
};
вместо
this.foto006lm.close006l.onPress = function() {
removeMovieClip(_root.malgal.foto006lm);
};
Написал так... Один хрен не работает(((
Psycho Tiger
03.07.2009, 23:12
А это ок что с цифры начинается имя в атаче?
rockerror
03.07.2009, 23:14
Хмхмхм... Прочитал еще, что полезно запихивать мувик поглубже иначе может не удалиться... теперь код на кнопку-удалялку выглядит так:
this.foto006lm.close006l.onPress = function() {
_root.malgal.foto006lm.swapDepths(5000);
_root.malgal.foto006lm.removeMovieClip();
};
что совсем не добавило ему работоспособности(((
Добавлено через 53 секунды
Psycho Tiger эээ где именно? аттач-то работает ремув не пашет...
Ок, исправил аттач. Теперь все выглядит вот так:
this.attachMovie("foto006lm", "foto006lmov", this.getNextHighestDepth(0), {_x:0, _y:-345});
this.foto006lm.close006l.onPress = function() {
_root.malgal.foto006lm.swapDepths(5000);
_root.malgal.foto006lm.removeMovieClip();
};
Аттач по-прежнему работает, а ремув - нет((((
Действительно - кнопку не то что удалить, поместить на другую глубину нельзя
(я уж молчу про цирк с областями видимости, например листенер, размещенный на непосредствено на кнопке ссылается на ее родителя, а присвоенный - onPress = function(){... - на нее саму).
Протестируйте:
button.onPress = function()
{
this.swapDepths(this._parent.getNextHighestDepth());
trace(this.getDepth());
removeMovieClip(this);//Все равно возвращает отриц. глубину
}
Если вместо кнопки на сцену кинуть MovieClip и обозвать "button" - все будет работать
Выход - обернуть кнопку в еще один мувик, который и удалять
rockerror
03.07.2009, 23:29
Всем спасибо, все оказалось много проще и, таки заработало) На мысль натолкнул Psycho Tiger))) Спасибо ему))
Как выяснилось, я писал не правильно имя мувика, который надо удалить)) Вот рабочий код:
//Загружаем большое фото 006
this.attachMovie("foto006lm", "foto006lmov", this.getNextHighestDepth(0), {_x:0, _y:-345});
//Удаляем большое фото 006 при нажатии кнопки "закрыть"
this.foto006lmov.close006l.onPress = function() {
_root.malgal.foto006lmov.swapDepths(5000);
_root.malgal.foto006lmov.removeMovieClip();
};
Добавлено через 1 минуту
expl пасиб! попробую потом, просто сроки жмут... заработало - хорошо; твой вариант на заметке!))
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.