08. maj 2002 - 02:34Der er
5 kommentarer og 1 løsning
play/pause multiknap!
Hej, er der nogle der kan hjælpe mig med noget script til play/pause knap. Det er sådan at jeg har 6 billeder ialt.
"play" = play knappen "play2" = mouseover knappen til play "play3" = Nedtrykkede knap til play "pause" = pauseknappen "pause2" = mouseover knappen til pause "pause3" = Nedtrykkede knap til pause
Indtil videre har jeg indsat play knappen ind på stagen og placeret den. Jeg har skrevet følgende script:
on mouseEnter me set the member of sprite 7 to "play2"
on mouseLeave me set the member of sprite 7 to "play"
on mouseUp me set the member of sprite 7 to "play" set the movierate of sprite 6 to 1
on mouseDown me set the member of sprite 7 to "play3"
end
Det jeg gerne vil have er at når jeg har trykket på når jeg peger med musen over play knap viser den mouseoverbilledet og når jeg trykker så den nedtrykkede billede. Når jeg så har trykket og sluppet musen skal den skifte til pausebilledet og som skal have den samme funktion som play knappen med mouseover og nedtrykkede billede. Altså en multiknap play/pause.
Det var så en lang smørre og håber der er nogle der kan hjælpe mig.
Det ser egentlig meget rigtigt ud, men du skal have "end" efter hver handler.
on mouseEnter me set the member of sprite 7 to "play2" end on mouseLeave me set the member of sprite 7 to "play" end on mouseUp me set the member of sprite 7 to "play" set the movierate of sprite 6 to 1 end on mouseDown me set the member of sprite 7 to "play3" end
Du er nødt til at have gang i nogle propertys, så du kan holde styr på hvilken funktion knappen har lige nu (og evt. hvilke andre sprites den skal kommunikere med).
- Jeg går ud fra et det er en behavior du har gang i (så scriptet ligger på en sprite)
Sådan her ville jeg gribe det an. (NB nu skriver jeg koden, så du kan se principperne - jeg har ikke testet det, så det må du selv gøre)...
property pSprite -- nummeret på denne sprite er altid godt at have property pVideoSprite -- nummeret på din videosprite
property pPlayMember1 -- det castmember der indeholder play1 property pPlayMember2 property pPlayMember3 property pPauseMember1 property pPauseMember2 property pPauseMember3
property pState -- viser knappen play eller pause property pClickState -- er der klikket på knappen (true/false)
on beginSprite me pSprite = me.spriteNum pVideoSprite = 10 -- erstattes med nummeret på din videosprite
on mouseEnter me if pState = #play then -- knappen viser play if pClickState then -- museknappen er trykket ned sprite(pSprite).member = pPlayMember3 else sprite(pSprite).member = pPlayMember2 end if else if pClickState then -- museknappen er trykket ned sprite(pSprite).member = pPauseMember3 else sprite(pSprite).member = pPauseMember2 end if end if end
on mouseLeave me if pState = #play then sprite(pSprite).member = pPlayMember1 else sprite(pSprite).member = pPauseMember1 end if end
on mouseDown me pClickState = TRUE
if pState = #play then sprite(pSprite).member = pPlayMember3 else sprite(pSprite).member = pPauseMember3 end if end
on mouseUp me if pClickState then -- there was a mouse down on me earlier = valid click pClickState = FALSE
if pState = #play then pState = #pause -- skifter til pause-mode sprite(pSprite).member = pPauseMember2 -- der er jo stadig rollover, derfor pause2 sprite(pVideoSprite).movieRate = 1 -- sætter videoen igang else pState = #play sprite(pSprite).member = pPlayMember2 sprite(pVideoSprite).movieRate = 0 -- pause'r videoen end if end if end
on mouseUpOutSide me pClickState = FALSE end
on exitFrame me if pState = #pause then -- knappen viser pause if sprite(pVideoSprite).movieRate = 0 -- videoen er stoppet pState = #play sprite(pSprite).member = pPlayMember1 end if end if end
Det største problem med dette er, hvis brugeren holder knappen nede når video stopper (når til slut), så kan der være lidt grafik forvirring, men der skulle ikke være nogen funktionalitets-problemer...
Jeg har fået det til at virke. Mange tak for hjælpen Ask-M, det var 100% rigtigt.
Synes godt om
Ny brugerNybegynder
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.