Třída MovieClip,třída Display Object, DisplayList. Kontejnery a práce s nimi.
Třída Movieclip
Vlastnosti Movieclipu
Jméno instance
- Symbol v knihovně je určitá matrice. Pokud jej přesuneme na scénu, vytváříme tím jednotlivé instance (kopie). Každá instance může mít své jméno.
- Jméno slouží k tomu, abychom instanci mohli adresovat – ovládat Action Scriptem.
- Jméno instance nesmí:
- obsahovat mezery
- začínat číslem
- obsahovat speciální znaky
- Je dobré dodržovat:
- Jméno by mělo začínat malým písmenem
- Dávejte pojmenování příponu podle typu souboru (movieclip _mc, button _btn, text _txt)
jmenoMovieClipu_mc Přidání posluchače události a vytvoření funkce:
- Umožňuje nám vytvořit „posluchače“ (Event Listener), který čeká připojený k instanci na určitou událost a pokud se událost stane, spustí k němu připojenou funkci.
//objektu se jménem "jmenoMovieClipu_mc" přidáváme posluchače "addEventListener", který reaguje na kliknutí myši "MouseEvent.CLICK" a po kliknutí spustí funkci "udelejNeco" jmenoMovieClipu_mc.addEventListener(MouseEvent.CLICK, udelejNeco); //funkce, která spustí kliknutí - se jménem udelejNeco, máme určeno, že ji spouští událost myši. Uvnitř funkce se píše, co se má vykonat. function udelejNeco (e:MouseEvent) { //co se má vykonat }
Vlastnosti MovieClipu
- K vlastnosti přistoupíme (nastavíme ji) napsáním jména instance a přidáním tečky:
jmenoMovieClipu_mc.y=50; //posune Movieclip na souřadnici y 50
- Pak stačí dopsat jakou vlastnost chceme nastavit na jakou hodnotu:
- jméno instance MovieClipu – _mc – Flash nabídne seznam příkazů, které se týkají MovieClipu – jmenoMovieClipu_mc
- * .width (Number) – šířka
- * .height (Number) – výška
- * rotation (Number) – úhel otočení po směru hodinových ručiček
- * .x (Number) – pozice podle osy x (horizontální, z leva do prava)
- * .y (Number)- pozice podle osy y (vertikální, odshora dolu)
- * .alpha (Number) – průhlednost (0 průhledná – 1 plná)
- * .rotation (Number), (ve stupních, výchozí pozice je ta kterou má objekt v knihovně)
- * .scaleX (Number) – zvětšení podle osy X, zadaným číslem se násobí, vznikne konečná velikost (0.5 – poloviční, 1 – aktuální velikost)
- * .scaleY (Number) – zvětšení podle osy Y
- * .buttonMode(True/False) – zobrazí nad MovieClipem „pacičku“, která označuje objekt, na který lze klikat
hodnota = přiřazení, += přičtení, -= odečtení, /= vydělení, *= vynásobení
Metody MovieClipu
- Obsluhy chování instance MovieClipu.
- .stop() – zastaví Movieclip
- .play() – spustí Movieclip
- .gotoAndStop(cisloFramu) – zastaví Movieclip na určitém framu (nastavujeme číslo snímku, kde se má zastavit)
- .gotoAndPlay(„nazevLabelu“) – spustí MovieClip na určitém framu (nastavujeme jméno do uvozovek)
Movieclip je potomkem třídy DisplayObject a DisplayObjectContainer – zdědil po nich určité vlastnosti (rozepsané niž)
Třída DisplayObject
http://help.adobe.com/cs_CZ/FlashPlatform/reference/actionscript/3/flash/display/DisplayObject.html
Třída DisplayObject je základní abstraktní třída. Tato třída je rodičem všech objektů, které se mohou zobrazit na scéně jako grafické prvky (mohou být přidány do seznamu zobrazení). Samotná třída DisplayObject nemůže vykreslit obsah na obrazovku, ani ji nemůžeme vytvářet jako proměnnou.
Vlastnosti třídy DisplayObject
- alpha
- height
- width
- name
- mouseX
- mouseY
- scaleX
- scaleY
- x
- y
- z
- visible
- rotation
- parent
- a další…
Metody třídy DisplayObject
- globalToLocal – převede objekt z globálních souřadnic (např. scéna) na lokální souřadnice objektu zobrazení
např. umožňuje vkládat karty do balíčku a pohybovat celým balíčkem - localToGlobal – převede objekt z lokálních souřadnic na souřadnice globální
např. vytáhne kartu zpět z balíčku a karta se už s balíčkem nepohybuje - hitTestObject – vyhodnocuje dotek rámečků dvou objektů zobrazení
- hitTestPoint – vyhodnocuje dotek objektu zobrazení (rámečku, nebo samotného grafického obsahu) a bodu určeného parametry x a y (např. referenční bod dalšího objektu)
Události třídy DisplayObject
- Event.ENTER_FRAME
- Event.EXIT_FRAME
- Event.CHANGE
- a další…
Třída DisplayObjectContainer
Tato třída je základní třída pro všechny objekty zobrazení (potomky třídy DisplayObject), které mohou sloužit jako další objekty zobrazení. Je to základní abstraktní třída a nejde vytvářet její instance, ani ji volat.
Tato třída má seznam potomků, jejichž pořadí zobrazení jde upravovat (osa z) např. pomocí metody addChild.
Vlastnosti třídy DisplayObjectContainer
- mouseChildren – nastavuje jestli vnořené prvky v objektu mohou být ovládány myší nebo jinými vstupy uživatele
- numChildren – vypíše počet potomků tohoto objektu.
Metody třídy DisplayObjectContainer
- addChild(child:DisplayObject) – přidá potomka objektu
- addChildAt(child:DisplayObject, index:int) – přidá potomka na určitou pozici
- removeChild(child:DisplayObject) – odebere potomka objektu
- a další
DisplayList
- Je způsob zobrazení objektů na scéně.
- Každý objekt má pozici z
- objekt, který je nejníž má pozici 0, objekt který je nad ním pozici 1, nejvyšší objekt pozici 3
PPT prezentace o kontejnerech – displayobjectcontainer_a_loader