Avatar billede mike_1212 Nybegynder
22. februar 2005 - 16:13 Der er 13 kommentarer og
1 løsning

kloge knapper?

Hej Eksperter

Sidder og har et problem med knapper. Kan godt lave dem og animere dem, men kunne godt tænke mig lidt mere kontrol over dem.

Hvis jeg har animationer i både rollover, rollout og når der bliver trykket, hvordan kan jeg så sikre mig at min animationer bliver spillet til ende selvom brugeren måske fjerner musen eller trykker. Vil gerne undgå de små hak det kan gi.

Håber i kan hjælpe, tak!
Avatar billede lyden Nybegynder
22. februar 2005 - 16:19 #1
Du skal istedet lægge dine Mclips for sig & ikke i dine knapper.

Styr dine Mclip fra knapperne.

Navngiv dine Mclips med Instance navne feks: my_clip1 osv.

Styr dem derefter fra knapperne med feks. :

on (release) {
    my_clip1.gotoAndPLay(2);
    my_clip2.gotoAndStop(1);
}
Avatar billede mike_1212 Nybegynder
22. februar 2005 - 16:45 #2
Jeg bruger også Mclips og styre dem med knapperne.

Vil bare rigtig gerne kunne styre at der ikke kommer hakker.

Eks. Hvis jeg har en rektangel der bliver længere når brugeren kommer hen over knappen og den ikke er nået helt hen til slutningen af animationen når brugeren fjerner musen igen, så hakker den i det når rollout animationen overtager.
Avatar billede lyden Nybegynder
22. februar 2005 - 17:01 #3
Ok, men hvis du eksempelvis har en animation af en rektangel der udvider sig fra frame 2 til & med 11, & i samme clip trækker den sig sammen fra frame 12 til & med 20.

Burde dette kunne gøre det uden at det hakker :

on (rollOver) {
    rektangel.gotoAndPlay(2);
}
on (rollOut) {
    rektangel.gotoAndPlay(12);
}

men ehhh, jeg kender ikke lige opbygningen af dine Mclips
Avatar billede mike_1212 Nybegynder
22. februar 2005 - 17:16 #4
Har lige testet den. Hvis man fjerner musen fra rektangelen før den når 11, måske omkring 4-5 stykker, springer den jo frem til 12 og giver et hak i grafikken.
Avatar billede lyden Nybegynder
22. februar 2005 - 17:20 #5
så må din framerate være på 4, hvis du kan nå det ;o)

kan man se det du bikser med?
Avatar billede lyden Nybegynder
22. februar 2005 - 17:22 #6
måske skulle du tilføje en if sætning til dit lille script der sørger for at den bliver spillet færdig.
Avatar billede mike_1212 Nybegynder
22. februar 2005 - 17:30 #7
Ved godt det er lidt af et flueknepper spørgsmål, men kunne bare godt tænke mig det var helt flydende.

Ved ikke lige hvordan jeg gør det med en if sætning, men det var noget i den stil jeg havde forestillet mig det skulle gøres.
Avatar billede lyden Nybegynder
22. februar 2005 - 17:39 #8
den kan jeg ikke lige knække, men måske kunne man on (rollout) lave en play current frame eller !!!
Avatar billede mike_1212 Nybegynder
22. februar 2005 - 17:46 #9
Jeg har brugt dette indtil nu i min knap:

on (rollOver){
    _root.slide = true;
}

on (rollOut, dragOut){
    _root.slide = false;
}

Og så har jeg sat dette op på min timeline:

button1_mc.onEnterFrame = function(){
    if(slide){
        this.nextFrame();
    }else{
        this.prevFrame();
    }
}

Men jeg kan ikke lige gennemskue hvordan jeg min knap til at blive i en position når der er nogen der trykker for så kører den tilbage.
Avatar billede lyden Nybegynder
22. februar 2005 - 18:07 #10
hvis det er et menupunkt kunne du jo skjule knappen indtil der bliver  trykket på et andet.
Avatar billede rugre Nybegynder
22. februar 2005 - 23:08 #11
lav denne funktion i roden hvor knappen ligger:

_global.tweenScale = function(movie, endx, endy, time) {
    easeType = mx.transitions.easing.Strong.easeOut;
    var endX = endx;
    var endY = endy;
    var timer = time;
    var mc = movie;
    TweenID = new mx.transitions.Tween(mc, "_xscale", easeType, movie._xscale, endX, timer, true);
    TweenID = new mx.transitions.Tween(mc, "_yscale", easeType, movie._yscale, endY, timer, true);
};

lad os sige din knap hedder button1_mc:

button1_mc.onRollOver = function(){
tweenScale(button1_mc, 150, button1_mc._yscale, 0.5)
}

og :

button1_mc.onRollOut = function(){
tweenScale(button1_mc, 100, button1_mc._yscale, 0.5)
}

Dette vil være flydende, din knap vil således blive 50% bredere over o,5 sek.
Du kan selvfølgelig ændre disse variabler!
Husk at publishe filmen i flash 6 actionscript 2 ellers virker det ikke.

læs mere om disse funktioner her:
http://www.actionscript.org/tutorials/advanced/Tween-Easing_Classes_Documented/index.shtml

lærer du disse funktioner at kende vil der åbne sig en ny verden af muligheder :-)

mvh
http://www.runeg.com
Avatar billede rugre Nybegynder
22. februar 2005 - 23:09 #12
ok?
Avatar billede lyden Nybegynder
22. februar 2005 - 23:22 #13
cool
Avatar billede mike_1212 Nybegynder
25. februar 2005 - 14:18 #14
Mange tak for hjælpen det er rigtig cool og undskyld forsinkelsen på tilbagemeldingen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester