PDA

Просмотр полной версии : как изменить тип объекта посредством AS?


deaddread
17.01.2007, 15:52
Есть такая проблема:
нужно с помощью экшн скрипта изменить тип обьекта с "кнопки" на "графика" .. подскажите как можно это сделать?
заранее спасибо!

Kikasso
17.01.2007, 15:55
Не получится. Да и зачем такое может понадобится?
Можно сказать btn.enabled = btn.useHandCursor = false; и это вырубит кнопку btn.

deaddread
17.01.2007, 16:49
хм ... такое в принципе подойдет ... спасибо!

deaddread
17.01.2007, 17:29
ммм.. странно, но не действует ...
немного опишу что у меня за схема, может это поможет...
значит есть кнопка - назовем кн1, она находится в клипе с названием клип1, который находится в руте... при нажатии на эту кнопку идет переход на лейбл фрейма в руте ...
и в этом фрейме такой код:
_root.клип1.кн1.enabled = _root.клип1.кн1.useHandCursor = false;

пробовал и такое, но тоже не действует - _root.клип1.кн1.enabled = кн1.useHandCursor = false;

правильно ли я пишу... и если не правильно, то как надо?

KUZEN
17.01.2007, 17:40
непонятен сам факт замены типа обьекта, используйте везде мувики и будет вам счастье

LeXi42006
17.01.2007, 17:46
Ты случайно их по-русски неназываеш?

LeXi42006
17.01.2007, 17:54
Если по-русски, то это не есть хорошо.Надо клипы называть по английски)))

Kikasso
17.01.2007, 18:09
что гадать, все в архив - и в студию

deaddread
17.01.2007, 18:16
по русски не называю, всеж не дурак )) .... а архив довольно большой, ща придумаю семпл и предоставлю ))

2 KUZEN
насчет мувиков не понял, обьсните поподробнее - что они мне могут дать в решении этой проблемы?

Aziz Zaynutdinoff
17.01.2007, 18:19
MovieClip может заменить и кнопку и графику.
поставил на MovieClip событие onRelease и вуаля это кнопка... убрал событие и вот это уже графика.

deaddread
17.01.2007, 18:24
вот на скорую руку заколбасил .. кому не лень, помогите плиз!

deaddread
17.01.2007, 18:26
MovieClip может заменить и кнопку и графику.
поставил на MovieClip событие onRelease и вуаля это кнопка... убрал событие и вот это уже графика.

оки, тогда как програмно мне это делать?
если можно, то используйте для этого мой семпл я его ответом выше прикрепил .. лучше всеж таки наглядный пример .. спасибо заранее ..

Kikasso
17.01.2007, 19:15
Для начала надо кнопку (клип) назвать, а потом к ней обращаться.

deaddread
17.01.2007, 19:33
о ееппрст .... я ж писал в позапредыдущем посте что я называю мувик такто, а кнопку такто .. это я все знаю .... и не на русском языке как уже сообщалось .. но оно не работает с вашим ...и поэтому я сделал этот семпл, в котором все создал, но решил ничего не называть чтобы дать автору все сделать самому .. вот ... помогите если можете .. плз..

Kikasso
17.01.2007, 20:04
ну извините.
клип - кнопка:
// работает
mc.onRelease = function(){ /* код */ };
// отключен
delete mc.onRelease;
просто кнопка:

// сажаем команду
btn.onRelease = function(){ /* код */ };
// выключаем
btn.enabled = btn.useHandCursor = false;
// включаем
btn.enabled = btn.useHandCursor = true;

В вашем исходнике два ключевых кадра, очевидно вы переходите во второй кадр - и ваша кнопка заново рождается. gotoAndStop вместо gotoAndPlay . сидите ковыряйте, вот вам обратно.

deaddread
17.01.2007, 20:08
оо ... это уже другое дело... премного благодарен ...

Kikasso
17.01.2007, 20:18
и еще, on(release){...} это не тема.