PDA

Просмотр полной версии : Аттач в button


ARA
11.12.2007, 11:44
Привет всем, не могу понять, почему я не могу вставить изображение в кнопку? :wacko:

Эток как-то связанно с областью видимости button!?
До этого у меня был обычный button, позже в библиотеки изменил на Movie Clip, а экземпляры так и остались на работчем столе как button, тока прикшлось удалить 4-й кадр, "Hit"!

CrazyFlasher
11.12.2007, 11:48
не используйте кнопки...юзайте мувиклипы

ARA
11.12.2007, 12:02
сделал клип, привязал к нему событие!
У меня такое чувство (хоть всё и работает), что код можно было красивее, и грамотней написать (с одним обработчиком), так ведь?

И ещё, в кнопку я так же, уровнем выше, я положил клип "mask" как назначить ему свойство маски? а то "обычные" просто не компилируются там куда при аттачил что-нибудь.


onClipEvent (load) {
this.image.attachMovie("image_button","image_button",1);
this.image.attachMovie("mask","mask_new",2);
}
on (rollOver) {
gotoAndStop("over")
}
on (rollOut) {
gotoAndStop("up")
}
on (press) {
gotoAndStop("down")
}
on (release) {
gotoAndStop("up");
}

olexandr
11.12.2007, 13:49
Код твой разве что на кадр поместить надо

имяТвоегоКлипа.image.attachMovie("image_button","image_button",1);
имяТвоегоКлипа.image.attachMovie("mask","mask_new",2);
имяТвоегоКлипа.onRollOver=function() {
this.gotoAndStop("over")
}
имяТвоегоКлипа.onRollOut=function() {
this.gotoAndStop("up")
}
имяТвоегоКлипа.onPress=function() {
this.gotoAndStop("down")
}
имяТвоегоКлипа.onRelease=function() {
gotoAndStop("up");
}


Программное наложение маски

имяТвоегоКлипа.setMask(имяТвоейМаски);

dmitriev
11.12.2007, 14:23
ActionScript classes > MovieClip > setMask (MovieClip.setMask method)
Мде... Опоздал...

ARA
11.12.2007, 14:28
Спасибо, понял! В кажре размещать не стал, оставил старый код, в кнопке, возникает проблема, маска не работает!


this.image.attachMovie("b1_image_1","b1_image_1",1);
this.image.attachMovie("mask_1","mask_jpg",2);
mask_1.setMask(mask_jpg)


Не могу понять, почему не работает?

chingachgoog
11.12.2007, 14:46
сделал клип, привязал к нему событие!
У меня такое чувство (хоть всё и работает), что код можно было красивее, и грамотней написать (с одним обработчиком), так ведь?


on (rollOver) {
gotoAndStop("over")
}
on (rollOut) {
gotoAndStop("up")
}
on (press) {
gotoAndStop("down")
}
on (release) {
gotoAndStop("up");
}



Очень просто использовать клипы-кнопки.
Это обычный мувиклип, но у него есть три кадра с определенными именами (label) - _up, _over, _down (ну и обычно в первом кадре стоит stop())

Как только такому мывику будет задан хотя бы один кнопочный обработчик, мувик превратится в клип-кнопку. Т.е. в этом случае достаточно одной строчки кода:

мой_мувик_кнопка.onPress=function(){}

ARA
11.12.2007, 15:06
Спасибо, блин, а я и абыл чет) тока в настройках выбирал "кнопку" для экземпляра, и он так же работал, тока подгрузить туда картинку не мог, проблема была в области видимости для кнопок, я так понял, и прочитал!

А тут всё работает! кроме маски, не получается

olexandr
11.12.2007, 18:32
почему маска не получается?
трейсь пути

ARA
11.12.2007, 18:57
почему маска не получается?
трейсь пути

_level0.block_imaje.instance6.image
она есть, на слое, но не скрывает, не могу понять



onClipEvent (load) {
this.image.attachMovie("b1_image_1","b1_image_1",1);
this.image.attachMovie("mask_1","mask_new", 2 );
mask_1.setMask(mask_new)
}

chingachgoog
11.12.2007, 20:40
_level0.block_imaje.instance6.image
она есть, на слое, но не скрывает, не могу понять



onClipEvent (load) {
this.image.attachMovie("b1_image_1","b1_image_1",1);
this.image.attachMovie("mask_1","mask_new", 2 );
mask_1.setMask(mask_new)
}


я бы начал с чтения хелпа по attachMovie, потом перешел бы к setMask

olexandr
12.12.2007, 00:30
наверное, так в твоем случае...
this.image.b1_image_1.setMask(this.image.mask_new)

предчувствуя, что у тебя опять что-то не получится - следующий раз выкладывай уже исходник :)

ARA
12.12.2007, 10:30
Упс ..... :)
Спасибо olexandr, понял свою ошибку, всё получилось!
жалко что такой вариант не работает
b1_image_1.setMask(mask_new)
Буду читать хелп! ;)