17. december 2002 - 17:53Der er
23 kommentarer og 1 løsning
simpel toggle switch
Hvordan laver man en knap som virker som en toggle switch? altså en tænd / sluk knap. Når man klikker skal variablen skifte mellem 1 og 2. Og så skal man kunne måle når var = 1, så skal noget feks. rotere, og når var = 2, så skal rotationen stoppe.
det pædagogiske eks. forstår jeg ikke :-(, nogle af koderne kender jeg simpelthen ikke, hverken ! eller : Men det andet eksempel er mere ligetil, dog hvad skriver jeg hvis det objekt jeg vil ha til at rotere har et instans navn: boks? ved ikke hvad jeg skal skrive for at få den startet når der ikke er tale om at switche mellem tre frames.. kan det gøres smartere? men stadig med meget simpel kode?
! betyder NOT, og betyder at vi spørger om boolean´en _root.roto er true eller false, eller 1 eller 0 (samme ting).
? : er vel en slags shorthand for if..else, hvis udsagnet foran spørgsmålstegnet er sandt returneres udtrykket efter spørgsmålstegnet, ellers returneres udtrykket bag kolon...så ved du det :)
Skal du switche mellem tre frames eller snakker vi om en "on/off"-knap her?
det er en on off knap, men jeg kunne ikke selv finde ud af det medmindre jeg lavede tre frames med nogle actions. men det ser ud som om jeg har fået et svar. jeg forstår _rotation++ men ikke _rotation+=1 er det det samme??
det eneste jeg tænker er at det er for lang tid siden jeg har programmeret.. der er noget der dæmre. men tak for hjælpen, kan ikke give nogen af jer point medmindre i svarer og ikke kommenterer..
nu hvor vi er ved det.. hvad betyder den firkantede parantes så en sådan en sætning som denne: _root[_root.container].gotoAndStop(1) for der er vel ikke her tale om et array?
Umiddelbart giver det ingen mening at lave sådan en kode som du beskriver - men måske set i en sammenhæng kan det give mening! _root.container er en variabel som indeholder navnet på et af dine movieclip!
Et eksempel med mening - hvis jeg laver en løkke fx:
for (i=0; i<10; i++) { _root["mc"+i].gotoAndStop(1); }
Der er i en variabel som skifter værdi (0-9) - og med denne kode er det mig muligt at få alle de movieclip der hedder mc0 ... mc9 til at gå til frame 1!
Og nej det er ikke et array!
Jeg svarer lige (hvis jeg har fortjent point her?)!
Joeh det er nu et array sådan som jeg har forstået det (uden at det er noget jeg har vildt tjek på)
Men i flash lagres alle movieclips i et associativt array og kan derfor adresseres med alm. dot-notation: _root.clip eller ved array-notation _root["clip"]
Irriterende at hver gang man tror man har styr på noget, så viser det sig at man alligevel tager fejl ;) Men der er i det nævnte tilfælde ikke tale om et(eller hedder det en) almindelig array, men nærmere om hvordan flash lagre sine movieclips!
/Alexander (der fremover underskriver med følgende forbehold) Der tages forbehold for huller i min viden - og jeg tilslutter mig til enhver tid mat, barklund og nikolajdus rettelser til mine forklaringer!
..det skulle så være et associativt array, og svare til den måde flash lagrer movieclips i arrays, det må så være med nogle objektreferencer?....hvis jeg da ikke er gået helt galt i byen?
men anyways, barklund kommer sikkert forbi om lidt og råver af os :)
jamen så bliver i nød til at SVARE og ikke kun kommentere, ellers er det kun alexander der får point, men det er måske heller ikke noget i går så meget op i...
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.