![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jun 2015
Сообщений: 6
|
Существует ролик в котором расположены кнопки, при нажатии на кнопку должен проигрываться Фрагмент ролика. Сам фрагмент ролика (MovieClip) находится на этой же сцене в другом слое.
Пр написании кода возникает ошибка: TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null". at _fla::MainTimeline/frame1() ЕГЭ1 - это кнопка ЕГЭ - это MovieClip В дальнейшем предполагается создать еще 8 кнопок и 8 мувиков. Подскажите новичку как это осуществить? Код: Последний раз редактировалось udaaff; 15.06.2015 в 12:45. |
|
|||||
|
Во-первых лучше используйте латиницу в названиях, да и вообще в программировании.
А ваши имена ЕГЭ и т.д. точно прописаны именно на этих объектах (в панели Properties - InstanceName), а не просто в библиотеке? |
|
|||||
|
Регистрация: Jun 2015
Сообщений: 6
|
Да, имена действительно прописаны в свойствах.
Добавлено через 12 минут Спасибо, за совет с латиницей!!! Я решила вопрос: Код главной сцены, по нажатии на кнопку переходит на новый кадр в котором содержится другой мувик: stop(); ege1.addEventListener(MouseEvent.CLICK, clickListener1); function clickListener1(event:MouseEvent): void{ nextFrame(); } код: this.main.addEventListener(MouseEvent.CLICK, clickListener10); function clickListener10(event:MouseEvent): void{MovieClip(parent).gotoAndPlay(1); } playb.addEventListener(MouseEvent.CLICK,playF); function playF(e:MouseEvent): void{ gotoAndPlay (currentFrame + 25); if(currentFrame==totalFrames) { MovieClip(parent).gotoAndPlay(1); } } this.prevb.addEventListener(MouseEvent.CLICK, clickListener13); function clickListener13(event:MouseEvent): void{gotoAndStop (currentFrame - 65); } Осталось добавить остальные кнопки и мувики (по 8 штук) и чтоб все работало! Если не получится, я напишу!!! Последний раз редактировалось KaterinaRash; 15.06.2015 в 18:34. |
|
|||||
|
Если ЕГЭ это название кнопки в вашем мувике, то к этой кнопке нужно обращаться через её родителя, то-есть через имя мувика в котором она лежит (myMovieClip.ЕГЭ.addEvent и т.д.). Если вышеприведенный код располагается на основной сцене.
Просто ваш исходник я не могу посмотреть, как как у меня только cs3. |
|
|||||
|
Регистрация: Jun 2015
Сообщений: 6
|
Всегда ломала голову, а где в окне программы (или на каком объекте) мне прописать myMovieClip, чтобы система понимала что это основной ролик? Ведь на главной сцене много объектов(кнопки, ролики, слои).
Добавлено через 3 минуты Если писать myMovieClip.ЕГЭ.addEvent то выходит ошибка: Обращение не существующего свойства myMovieClip А к какому объекту мне присвоить имя myMovieClip? Как присвоить имя ко всему ролику? Добавлено через 1 час 1 минуту Помогите пожалуйста!!! Почему на главной сцене когда я прописываю код для кнопок(ege1, dop1), чтобы при нажатии на кнопку проигрывался определенный ролик, то появляется ошибка: Цитата:
|
|
|||||
|
Цитата:
Цитата:
|
|
|||||
|
Регистрация: Jun 2015
Сообщений: 6
|
Да основной ролик это главная сцена.
Будьте так любезны, напишите пожаааалуйста пример как получить доступ к этой сцене и дать ей имя(MovieClip)!!!!! Я сосвсем не шарю (((Добавлено через 5 минут Я дала имена роликам (фрагментам роликов) dop и ege. На сцене у меня ключевой кадр, в нем расположен фрагмент ролика, в свойствах он назван dop (ну и ege соответственно). К ним я и обращаюсь: Может как-то еще их надо обозвать или определить. Но беда в том, что я не знаю как!!! |
|
|||||
|
Ей не нужно давать имя. Если вы пишете код в кадре сцены, то можете просто дописать
this - это ссылка не текущий объект, в котором вы пишете код в данный момент. А так как вы пишете код в кадре сцены, то this - это и есть сцена. Если вы напишете this в кадре какого-то мувика, то this будет ссылаться на этот мувик. Если вы пишете код в кадре какого-то мувика, то обратиться к сцене из него можно так: root - всегда хранит ссылку на основной класс вашей флешки. Так как флешка не может существовать без хоть какого нибудь контейнера в который вы помещаете все ваши объекты. Ваша сцена это точно такой же мувик, как и любой другой, просто он создаётся по-умолчанию и служит контейнером для всего вашего проекта. Но тут главное не запутаться со stage и root. |
|
|||||
|
Регистрация: Jun 2015
Сообщений: 6
|
С именем сцены понятно!!!
А как мне обратиться к вложенным роликам dop и ege? Система пишет ошибку на мой код Цитата:
this.ege1.addEventListener(MouseEvent.CLICK, clickListener1); function clickListener1(event:MouseEvent): void{ (ege as MovieClip).gotoAndPlay(1); } (ege as MovieClip).gotoAndPlay(1); ege - это ролик во 2 кадре. Я хочу чтобы по кнопке он начал проигрываться. А он.....блин... (((Добавлено через 56 секунд ПОМОГИТЕЕЕ!!! ПОЖАЛУЙСТА!!! Добавлено через 27 минут Я написала вот так: this.ege1.addEventListener(MouseEvent.CLICK, clickListener1); function clickListener1(event:MouseEvent): void{ this.gotoAndStop(this.currentFrame+1); ![]() Добавлено через 27 минут Ошибка исчезла!!! |
|
|||||
|
(ege as MovieClip) так писать просто нет смыла, так как ege у вас вроде не мувик, а кнопка даже.
Вообще as это привидение типов. Когда непонятно что это за объект, но мы хотим попробовать манипулировать им как каким-то конкретным классом, например мувиком. Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 23:32. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|