PDA

Volledige versie bekijken : Button in movieclip werkt niet (door onEnterFrame?)


meiske
%Europe/Berlin %400 %2010, 10:36
Hallo,

Hopelijk kunnen jullie mij helpen. Waarom werkt mijn button niet die in mijn movieclip zit? En hoe los ik dat dan op?

Het is een scrolldown menu.

Alvast bedankt!

menu1.onRollOver = function(){
trace("onRollOver");
this.onEnterFrame = function() {
if(menu1._y < 125){
menu1._y = menu1._y + 3;

}else{
delete this.onEnterFrame;
}
}
}

menu1.onRollOut = function(){
trace("onRollOut");
this.onEnterFrame = function() {
if(menu1._y > 61){
menu1._y = menu1._y - 3;

}else{
delete this.onEnterFrame;
}
}
}

// dit werkt (menu1 is de movieclip)
this.menu1.onRelease = function(){
trace("Clicked");
}

// dit niet (menu1a is de button die in de movieclip zit)
_root.menu1.menu1a.onRelease = function(){
trace("ok");
}

-ADV-
%Europe/Berlin %438 %2010, 11:31
// dit werkt (menu1 is de movieclip)
this.menu1.onRelease = function(){
trace("Clicked");
}

// dit niet (menu1a is de button die in de movieclip zit)
_root.menu1.menu1a.onRelease = function(){
trace("ok");
}

'this' hoef je hierboven niet te gebruiken en '_root' ook niet..
menu1.onRelease is genoeg.
Tevens word een onRelease in een onRelease niet ondersteund in flash.
Dat geld tevens voor onRollOver/Out in OnRelease/Press of andersom ect ect ect.

Je kan dit effect wel krijgen door gebruik te maken van een hittest:

menu1.onEnterFrame = function() {
if (RollOut()) {
this.prevFrame();
} else {
this.nextFrame();
}
};

function RollOut():Boolean {
if (menu1.hitTest(_root._xmouse, _root._ymouse, true)) {
return false;
} else {
return true;
}
}

Ik heb hier een voorbeeld van gemaakt op
http://www.flashfocus.nl/forum/showthread.php?t=58939

Gr,

-Adv-

meiske
%Europe/Berlin %555 %2010, 14:19
Heel erg bedankt voor je hulp -Adv- !

Ik denk dat ik aan de hand van je voorbeeldje er wel iets van kan maken. :)