Avatar billede jmc Nybegynder
20. februar 2002 - 22:21 Der er 13 kommentarer og
1 løsning

slider

hvorfor virker denne slider ikke. Den skal aftage exponentielt i hastighed indtil slider er nået xpos 780 hvor den skal stoppe. Jeg den samme kørende i enterframe hvor den følger noget andet. Den skal kun gøre dette én gang. komme ind fra højere og stoppe!

onClipEvent (load) {
    gstart = 780;

onClipEvent (enterFrame) {
    do {
        var pos = (_x/gstart);
        _x = _x-pos;
    } while ((_x/gstart)>1);
}
Avatar billede barklund Nybegynder
21. februar 2002 - 14:46 #1
For det sker jo med få millisekunder imellem... Den kører jo din enterFrame og hver gang, denne kører, så skal den flytte din slider hele stykket... Lav det om til:

onClipEvent (load) {
    gstart = 780;

onClipEvent (enterFrame) {
    if ((_x/gstart)>1) {
        var pos = (_x/gstart);
        _x -= pos;
    }
}

Så funker det...
Avatar billede jmc Nybegynder
21. februar 2002 - 15:28 #2
tak
er det ligesom
updatestage i LINGO ?
Avatar billede barklund Nybegynder
21. februar 2002 - 20:57 #3
En anden gang vil du måske sige tak ved at uddele pointene...

Hvad du mener med updatestage i Lingo (som jeg ikke har arbejdet med), så tror jeg ikke helt, at det er det samme... Flash er frame-baseret, så vil du have en bevægelse, så skal du ændre noget fra en frame til den næste.. Du kan ikke ændre det i kun en frame, for så når du ikke at se mellemstillinger, men kun slutstillingerne... Derfor skal du hver gang den kommer til en ny frame (enterFrame) undersøge, om den skal flytte sig...

/Barklund
Avatar billede jmc Nybegynder
21. februar 2002 - 22:56 #4
sorry jeg klikkede på svar i stedet for accepter men blev nok forvirret over et svar uden mulighed for pointsafsættelse. Jeg takker mange gange men vil du ikke have dine points?
Avatar billede jmc Nybegynder
21. februar 2002 - 23:05 #5
kan man ikke få det til at køre mere flydende, den hakker en del. Jeg prøvede også med:

onClipEvent (load) {
    gstart = 780;
}
onClipEvent (enterFrame) {
    if ((_x/gstart)>1) {
        var pos = (_x/gstart);
        _x -= pos*10;
    }
}

den skal over en 800 pixels skærm på ca 1 - 2 sekunder.
Avatar billede barklund Nybegynder
22. februar 2002 - 15:04 #6
Sæt framerate op... :o)

Eller tilføj en UpdateAfterEvent() nederst i clipevent'en...
Avatar billede barklund Nybegynder
25. februar 2002 - 14:10 #7
Virker det nu?
Avatar billede jmc Nybegynder
25. februar 2002 - 15:30 #8
Jeg kunne gdot tænke mig at gå udenom enterframe og lave det hurtigere. hurtigere ind og stoppe brat op. Director kan lave iteration (repeat while) med updatestage som tegner objetet imellem hver udregning.
Avatar billede barklund Nybegynder
26. februar 2002 - 13:49 #9
Som sagt har du to muligheder, framerate eller UpdateAfterEvent() nederst i enterFrame-løkken...
Avatar billede jmc Nybegynder
26. februar 2002 - 14:10 #10
tak

onClipEvent (enterFrame) {
    if ((_x/gstart)>1) {
        var pos = (_x/gstart);
        _x -= pos*10;
    }
}
UpdateAfterEvent()
Avatar billede jmc Nybegynder
26. februar 2002 - 14:11 #11
eller du mener nok:

onClipEvent (load) {
    gstart = 790;
}
onClipEvent (enterFrame) {
    if ((_x/gstart)>1) {
        var pos = (_x/gstart);
        _x -= pos*10;
    }
}
onClipEvent (enterFrame) {
    UpdateAfterEvent();
}
Avatar billede barklund Nybegynder
26. februar 2002 - 18:17 #12
Denne:

onClipEvent (enterFrame) {
    if ((_x/gstart)>1) {
        var pos = (_x/gstart);
        _x -= pos*10;
    }
    UpdateAfterEvent()
}
Avatar billede jmc Nybegynder
26. februar 2002 - 23:33 #13
tak jeg skulle desuden op på 50 fps for at opnå ønskede hastighed.
Avatar billede barklund Nybegynder
26. februar 2002 - 23:45 #14
Ævbæv...
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