Чтобы приложение нужно было добавить на страницу

Только готовые уроки по использованию ВКонтакте API. Flash + PHP + API. НЕ IFrame!
agni
Сообщения: 100
Зарегистрирован: 07 июн 2010, 11:04

Re: Чтобы приложение нужно было добавить на страницу

Сообщение agni »

psix55 писал(а):

Код: Выделить всё

gotoAndStop (2);//где 2 номер кадра!
или или что-нибудь другое!
подскажите синтаксис, если необходимо "передвинуть" root

текстовое поле "pole" лежит в мувиклипе, этот мувиклип лежит во втором кадре
если приложение добавлено - хочу передвинуть основную монтажную линейку (root) в третий кадр

следующий код работает:
 

Код: Выделить всё

package {    import flash.display.*;     public class isAppUser extends MovieClip    {        public function isAppUser():void        {            var params:Object = LoaderInfo(root.loaderInfo).parameters;            var is_app_user = (params['is_app_user']) ? parseInt(params['is_app_user']) : 0;            if (is_app_user == 1)            {                pole.text = 'Спасибо, что добавили приложение';             }            else            {                pole.text = 'Пожалуйста, добавьте приложение на свою страницу';            }        }    }}
если в самом мувиклипе с текстовым полем "pole" сделать несколько кадров, то следующий код тоже работает:
 

Код: Выделить всё

package {    import flash.display.*;     public class isAppUser extends MovieClip    {        public function isAppUser():void        {            var params:Object = LoaderInfo(root.loaderInfo).parameters;            var is_app_user = (params['is_app_user']) ? parseInt(params['is_app_user']) : 0;            if (is_app_user == 1)            {                this.gotoAndStop(3);            }            else            {                pole.text = 'Пожалуйста, добавьте приложение на свою страницу';            }        }    }}
не получается из этого мувиклипа обратиться к основной монтажной линейке, то есть следующий код не работает:
 

Код: Выделить всё

package {    import flash.display.*;     public class isAppUser extends MovieClip    {        public function isAppUser():void        {            var params:Object = LoaderInfo(root.loaderInfo).parameters;            var is_app_user = (params['is_app_user']) ? parseInt(params['is_app_user']) : 0;            if (is_app_user == 1)            {                parent.gotoAndStop(3); // также не работает: root.gotoAndStop(3);            }            else            {                pole.text = 'Пожалуйста, добавьте приложение на свою страницу';            }        }    }}
как обратится к руту, чтобы сдвинуть его в другой кадр?
Аватара пользователя
paduchin
FL Team
FL Team
Сообщения: 318
Зарегистрирован: 01 мар 2010, 14:20

Re: Чтобы приложение нужно было добавить на страницу

Сообщение paduchin »

А какие ошибки то выдаёт ?
agni
Сообщения: 100
Зарегистрирован: 07 июн 2010, 11:04

Re: Чтобы приложение нужно было добавить на страницу

Сообщение agni »

на
root.gotoAndStop(3);
пишет
1061: Call to a possibly undefined method gotoAndStop through a reference with static type flash.display:DisplayObject.
вызов неопределенного метода

предполагаю, что для AS3 надо по-другому вызывать, но как - пока ответ не нашел
agni
Сообщения: 100
Зарегистрирован: 07 июн 2010, 11:04

Re: Чтобы приложение нужно было добавить на страницу

Сообщение agni »

-------------------------------------- не то
Аватара пользователя
paduchin
FL Team
FL Team
Сообщения: 318
Зарегистрирован: 01 мар 2010, 14:20

Re: Чтобы приложение нужно было добавить на страницу

Сообщение paduchin »

Попробуй импортировать свой мувиклип в класc
Должно помочь
agni
Сообщения: 100
Зарегистрирован: 07 июн 2010, 11:04

Re: Чтобы приложение нужно было добавить на страницу

Сообщение agni »

у меня поведение мувиклипа определяется соответствующим классом
в какой класс импортировать мувиклип?
Аватара пользователя
paduchin
FL Team
FL Team
Сообщения: 318
Зарегистрирован: 01 мар 2010, 14:20

Re: Чтобы приложение нужно было добавить на страницу

Сообщение paduchin »

Как в какой ?
В этот, в котором у тебя и возникают ошибки
А лучше пиши в кадре, и тогда ничего импортировать и не надо будет
Аватара пользователя
bodnar
Модератор
Модератор
Сообщения: 1399
Зарегистрирован: 03 апр 2010, 06:41

Re: Чтобы приложение нужно было добавить на страницу

Сообщение bodnar »

paduchin писал(а):А лучше пиши в кадре, и тогда ничего импортировать и не надо будет
Это далеко не лучше, да и преимущество от такого метода вряд ли можно назвать преимуществом. Импорт занимает несколько строк кода, но избавившись от них вы теряете абсолютно все чем вас награждает ООП.

По существу. Если хочешь перейти на другой кадр основной линейки, то применяешь gotoAndStop() к главному классу (имя которого вписывал при создании fla файла). Ругается же потому что методом gotoAndStop() обладают только мувиклипы и все кто от него наследуются.

А если еще более по существу, то я в последнее время делаю так: arrayOfFrame это массив который содержит мувилипы-контейнеры (считай что кадры). Мне нужен первый, я добавляю на сцену arrayOfFrame[1], и прицепляю все что нужно отобразить к нему. Нужен второй удаляю первый(а вместе с ним и все что к нему прикреплено) и добавляю второй. А если вдруг у меня должно быть меню, которое есть на каждом кадре все просто, добавляю вне контейнеров. Наверняка способ не безупречен и скоро найдутся в нем изъяны...
Аватара пользователя
paduchin
FL Team
FL Team
Сообщения: 318
Зарегистрирован: 01 мар 2010, 14:20

Re: Чтобы приложение нужно было добавить на страницу

Сообщение paduchin »

Мне просто удобнее писать в кадрах :)
Привык. Пробовал писать в классах, но показалось неудобным
agni
Сообщения: 100
Зарегистрирован: 07 июн 2010, 11:04

Re: Чтобы приложение нужно было добавить на страницу

Сообщение agni »

bodnar писал(а):По существу. Если хочешь перейти на другой кадр основной линейки, то применяешь gotoAndStop() к главному классу (имя которого вписывал при создании fla файла). Ругается же потому что методом gotoAndStop() обладают только мувиклипы и все кто от него наследуются.
я думал мувиклип root создаётся "по умолчанию", если кадры монтажного стола созданы вручную - как мувиклип создать заново, если он уже создан?
Главный класс не прописывал , классы указываю для мувиклипов, которые размещаю на сцене, прописываю каждый класс в отдельном файле. Совместить оба способа не получалось.
bodnar писал(а):А если еще более по существу, то я в последнее время делаю так: arrayOfFrame это массив который содержит мувилипы-контейнеры (считай что кадры). Мне нужен первый, я добавляю на сцену arrayOfFrame[1], и прицепляю все что нужно отобразить к нему. Нужен второй удаляю первый(а вместе с ним и все что к нему прикреплено) и добавляю второй. А если вдруг у меня должно быть меню, которое есть на каждом кадре все просто, добавляю вне контейнеров. Наверняка способ не безупречен и скоро найдутся в нем изъяны...
поясните, пожалуйста, кодом
arrayOfFrame - его надо создавать или он уже есть, осталось только к нему обратиться?
Ответить