Avatar billede m-kris Nybegynder
28. september 2001 - 15:29 Der er 15 kommentarer og
1 løsning

tilbage knap

Jeg har en tilbage knap i alle mine movies, og jeg bruger dette movie script:
global myreturnframe, myreturnMovie

on stopMovie
  myreturnframe = findlastlabel()
  myreturnmovie = getMoviename()
end

on findLastLabel
  aa = label(0)
  repeat with i = 1 to (the labelList.line.count - 1)
    if aa = label(the labelList.line[i]) then
      return the labelList.line[i]
    end if
  end repeat
end

on getMoviename
  res = \"\"
  fullMovName= the moviename
  ShortMovName = char 1 to (the length of fullMovName- 4) of fullMovName
  res = ShortMovName
  return res
end

Jeg bruger dette script til min tilbage knap:
global myreturnMovie

on MouseUp me
  go to movie myreturnMovie
end MouseUp me

Jeg kan kun få min tilbage-knap til at gå et skridt tilbage. Hvordan tilretter jeg/ændrer jeg scriptet, så jeg kan gå flere skridt tilbage? Skal jeg også oprette en liste, og hvordan gør jeg det?

På forhånd tak,
m-kris
Avatar billede lingoman Nybegynder
28. september 2001 - 17:24 #1
Ja, du kan oprette en global liste med movie:marker par og tilføje myReturnFrame og myReturnMovie til denne for hver gang en stopMovie event opstår

fks  navlist = [[#myMovie:\"movie1\",#myMarker:\"label3\"],[#myMovie:\"movie5\",#myMarker:\"label2\"]]


tilføj dette til din stopMovie handler:

on stopMovie

    global navList
    if voidP(navlist) then set navlist = []
    myreturnframe = findlastlabel()
    myreturnmovie = getMoviename()
    myProp = [:]
    setaProp myProp,#myMovie,myreturnmovie
    setaProp myProp;#myMarker, myreturnFrame

    add navlist,myProp
end

myreturnmovie og myreturnFrame behøver ikke være globale

Din tilbage knap skal så altid hente den sidste myProp fra navlist og fjerne den

on mouseUp me
goBack me
end

on goBack me
  global navlist
  navCount = navlist.count
  if navCount > 0 then
      myLastProp = getLast(navlist)
      mylastFrame = getaProp(myLastProp,#myMarker)
      myLastMovie = getaProp(myLastProp, #myMovie)
      deleteAt navlist,navCount
      go to frame myLastFrame of movie myLastMovie
    end if
end

mvh geo



Avatar billede lingoman Nybegynder
01. oktober 2001 - 14:28 #2
Kunne det bruges ?
Avatar billede m-kris Nybegynder
01. oktober 2001 - 14:55 #3
Hej geo,
Jeg må indrømme, jeg har holdt helt almindelig weekend, og har ikke fået set på det endnu.
Men jeg er da lidt i tvivl om, hvad jeg skal gøre ved det.  Når du f.eks. skriver stopmovie handler, mener du så mit frame script, hvor der ellers står \"on exitframe go to the frame\"? Du kan høre, jeg er temmelig urutineret.
I det hele taget er jeg temmelig forvirret omkring, hvor man sætter disse scripts hen - Director hjælpen giver ingen anvisninger. Og jeg mangler vist den basale viden.
Men jeg siger dig selvfølgelig tak for hjælpen indtil nu - du har reddet mig adskillige gange!
mhv
m-kris
Avatar billede m-kris Nybegynder
01. oktober 2001 - 15:40 #4
Jeg har i mellemtiden fundet ud af, hvad du mener med stopmovie handler - mit \"tilbage\" movie script.
Jeg er i tvivl om navList - hvor jeg skal skrive det henne?  Ser det f.eks. sådan ud:
navList =[#myMovie:\"Politik\"], [#myMovie:\"Hverdag\"], [#myMovie:\"Teknologi\"], osv. for alle de dir filer, jeg har i mit projekt?
Jeg får også en fejlmeddelelse vedr. myProp
Dette er svært!
mvh
m-kris
Avatar billede lingoman Nybegynder
01. oktober 2001 - 15:50 #5
Copy>Paste [on stopMovie] scriptet i et scriptCastMember <CTRL 0> i alle dine film og vælg \"MovieScript\" i dialog boxen.

til [on mouseUp me] og  [on goBack me]
vælges \"Behavior\" i dialog boksen og derefter trækkes scriptet til din tilbage knap i Scoren

Hvis det driller må du sige til :)

mvh geo
Avatar billede lingoman Nybegynder
01. oktober 2001 - 16:04 #6
Du behøver ikke at skrive navlist nogen steder, det sørger lingo koden for at den bliver opbygget efterhånden som du navigerer rundt. Den sørger også for at slette når man går tilbage.

Hvis du gerne vil holde øje med hvordan navlist ændrer sig, så tilføj

put navlist

i dine scripts

altså

----------tilbage knap behavior (sættes på spriten)-----------

                        on mouseUp me
                        goBack me
                        end

                        on goBack me
                          global navlist
                          navCount = navlist.count
                          if navCount > 0 then
                              myLastProp = getLast(navlist)
                              mylastFrame = getaProp(myLastProp,#myMarker)
                              myLastMovie = getaProp(myLastProp, #myMovie)
                              deleteAt navlist,navCount
                              go to frame myLastFrame of movie myLastMovie
                            end if

                            put navlist

                        end

----------------movieScript----------------------------------------

                        on stopMovie

                            global navList
                            if voidP(navlist) then set navlist = []
                            myreturnframe = findlastlabel()
                            myreturnmovie = getMoviename()
                            myProp = [:]
                            setaProp myProp,#myMovie,myreturnmovie
                            setaProp myProp;#myMarker, myreturnFrame

                            add navlist,myProp

                            put navlist

                        end

navlist skulle gerne opbygges automatisk og dit output skulle gerne minde om følgende

--[]
--[[#myMovie:\"Politik\",#myMarker:\"ditFrameLabel\"]]
--[[#myMovie:\"Politik\",#myMarker:\"ditFrameLabel\"],[#myMovie:\"Hverdag\",#myMarker:\"enAndenFrameLabel\"]]

osv
Avatar billede lingoman Nybegynder
01. oktober 2001 - 16:05 #7
output >> i message vinduet  <CTRL M>
Avatar billede lingoman Nybegynder
01. oktober 2001 - 16:31 #8
Hvis det stadig giver dig problemer har jeg tid til at lave en demo i nat. Skal jeg sende det, eller vil du selv arbejde videre med det ?
send en mail hvis det har interesse :)
min email er geo@lingoman.dk

mvh geo
Avatar billede lingoman Nybegynder
02. oktober 2001 - 11:18 #9
Har du brug for mere hjælp?
Avatar billede m-kris Nybegynder
02. oktober 2001 - 13:46 #10
Hej geo,
Tusind tak for din store hjælp - hvad skulle jeg gøre uden dig!!
Mit projekt er et kandidatspeciale til Odense Uni. - og du er medvirkende til, at jeg kan bestå!
Jeg har været optaget af andre ting, så jeg har ikke gjort endnu, som du har skrevet. Men jeg har kun et enkelt spørgsmål tilbage: Jeg har ikke rigtig forstået, om dit moviescript erstatter det, jeg oprindelig havde, eller det er en tilføjelse (Man kan vel ikke have to \"on stopMovie\" scripts?) Så jeg går ud fra, at dit erstatter det, jeg først skrev?
mange hilsner
m-kris
Avatar billede lingoman Nybegynder
02. oktober 2001 - 13:58 #11
Ja, man kan kun have en stopMovie handler, så det er min udvidet udgave du skal bruge. Fandt desuden grunden til at du fik en script error!

Der var en lille men vigtig fejl i de første udgaver som jeg skrev. Her er den rettede kode, se om du kan finde forskellen:)

            on stopMovie

                global navList
                if voidP(navlist) then set navlist = []
                myreturnframe = findlastlabel()
                myreturnmovie = getMoviename()
                myProp = [:]
                setaProp myProp,#myMovie,myreturnmovie
                setaProp myProp,#myMarker, myreturnFrame

                add navlist,myProp

                put navlist

            end

Desværre havde jeg ikke adgang til Director da jeg svarede dig, men jeg skal nok fremover selv tjekke mine indlæg inden jeg svarer.

Sig til hvis du behøver mere hjælp.

mvh geo
Avatar billede m-kris Nybegynder
02. oktober 2001 - 18:20 #12
Hej geo,
Jeg har kigget og kigget, men forskellen må undvige mig!
Jeg har gjort, som du har sagt, men jeg får en fejlmeddelelse, der siger:  myreturnframe = findlastlabel() Handler not defined 
Jeg må gøre et eller andet galt?
hilsen
m-kris
(din tålmodighed må være endeløs!)
Avatar billede lingoman Nybegynder
02. oktober 2001 - 18:29 #13
Så er du nok kommet til at slette din findLastLabel handler som du havde i starten.
Hvad med  script error! myProp ? den kommer vel ikke mere ?
Forskellen er

forkert:  setaProp myProp;#myMarker, myreturnFrame
rigtig:    setaProp myProp,#myMarker, myreturnFrame

Sender du dine filer i een mappe (zip eller sit) hvis det er indenfor nogle MB i størrelse, (du kan evt.sende en light-version uden irrelevant baggrundsgrafik) så vil jeg redigere dem for dig så du kan komme videre...

mvh geo

Avatar billede lingoman Nybegynder
02. oktober 2001 - 22:21 #14
Hej m_kris,

You\'ve got mail...

Undskyld at filen blev lidt stor (næsten 1 MB), men jeg lavede alle .dir navnene som du havde i menuen så du frit kan starte navigationen fra hvilken som helst. Koden er ens i alle filmene. kun filnavne og teksten på stage ( for at give os mulighed for at se hvor vi er) er forskellige.

Men nu er den testet og sendt :o)

mvh geo
Avatar billede m-kris Nybegynder
03. oktober 2001 - 12:59 #15
Hej geo,
Tusind tak for din hjælp - det virker bare perfekt! Men det virker til gengæld lidt sølle bare at give dig 60 points for al den hjælp. Men jeg er meget taknemmelig!
Mange hilsner
M-kris
Avatar billede lingoman Nybegynder
03. oktober 2001 - 14:07 #16
Velbekommen! Det er jeg glad for at høre :)
mvh geo
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