Skocz do zawartości

Problem: wysuwany button - pomocy


Gość jaryjarek

Rekomendowane odpowiedzi

Gość jaryjarek

Mam tak sytuacje

 

na scenie głownej w pierwszej klatce mam movieClip przycisku btn_mc a w nim w warstwie1 movieClip o nazwie hitArea_mc, w warstwie2 grafike przycisku.

 

w movieClipe btn_mc utworzona jest klasyczna animacja z flagami 'Over' i 'Out' majaca sekwencje wysuwania i wsuwania przycisku.Gdzie w zaleznosci od tego czy najade kursorem myszki na btn_mc zalaczami sie animacja wysuwania 'Over' i wsuwania 'Out' btn_mc. Cos podobnego jak w tym tutrialu.

 

 

z ta roznica ze zamiast animacji zniany alfa ktora jest pokazana w tutorialu, mam animacje zniany polozenia btn_mc.

 

Obiekty hitArea_mc i grafika przysisku znajduja sie w btn_mc i maja taki sam kształt i pokrywaja sie wzajemnie tak ze mam aktywny obszar cały czas na przycisku.

 

Moj kod zamieszczony na pierwszej klatce sceny glownej tam gdzie znajduje sie btn_mc jest taki:

 

btn_mc.buttonMode=true;
btn_mc.hitArea=btn_mc.hitArea_mc;
btn_mc.addEventListener(MouseEvent.MOUSE_OVER, btnOver);
btn_mc.addEventListener(MouseEvent.MOUSE_OUT, btnOut);
btn_mc.addEventListener(MouseEvent.CLICK, btnClik);

function btnOver(event:MouseEvent):void{
   event.currentTarget.gotoAndPlay('btnOver');
}
function btnOut(event:MouseEvent):void{
   event.currentTarget.gotoAndPlay('btnOut');
}
function btnClik(event:MouseEvent):void{
   event.currentTarget.gotoAndPlay('btnOut');
   gotoAndStop(2);
} 

blad moj jest taki:

 

najezdzam myszka na przycisk, zaczyna sie wysuwac, zjezdzam pod czas kiedy movieclip sie odtwarza (przycisk wysuwa) i zostaje wykonana akcja onRollOut, gdzie masz przeskok do czesci gdzie przycik jest juz caly wysuniety i zaczyna sie chowac,

znowu na niego najezdzam i jest przeskok jak jest schowany i sie wysuwa itd...

 

szukajac odp na ten blad znalazlem cos takiego:

 

btn_1 - pole przycisku

mc_1 - klip z animacja przycisku

 

 

var over_or_out:int;

btn_1.addEventListener(MouseEvent.CLICK, btnclick);
btn_1.addEventListener(MouseEvent.MOUSE_OUT, btnout);
btn_1.addEventListener(MouseEvent.MOUSE_OVER, btnover);
this.addEventListener(Event.ENTER_FRAME, onEnterFrames);

function btnout(event:MouseEvent):void {
   over_or_out = 0;
}

function btnover(event:MouseEvent):void {
   over_or_out = 1;
}

function onEnterFrames(event:Event)
{
   if ((mc_1.currentFrame != mc_1.totalFrames) || (mc_1.currentFrame != 0)) 
   {
       if (over_or_out == 1 ) 
       {
           mc_1.nextFrame();
       }
       if (over_or_out == 0 )  
       {
           mc_1.prevFrame();        
       }
   }
}

function btnclick(event:MouseEvent):void{
.....
} 

 

Problem jest taki ze nie za dobrze smigam jeszcze w AS3 i nie rozumie do konca kodu. Czym w kodzie ktory znalazlem jest btn_1 i mc_1 i jak to odniesc do mojego kodu zeby sie nie pojawial moj blad w animacji?

 

P.S. Poczatki bywaja trudne

Odnośnik do komentarza
Udostępnij na innych stronach

  • Odpowiedzi 3
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Gość jaryjarek

uzywam as3 a w dodatku jestem poczatkujacy:(

a w dodatku to moje menu ma ksztalt koła i pod roznymi kątami wysuwaja sie buttony

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się



×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności