V²uka Flash (12.)
Objekty - pokraΦovßnφ
V dneÜnφm dφle budeme pokraΦovat v poznßvßnφ ActionScriptu. Ukß₧eme si n∞kterΘ dalÜφ objekty a vysv∞tlφme si jejich funkci.
Prßce s datumem a Φasem
Pro prßci s datumem a Φasem slou₧φ objekt Date. Dφky tomuto objektu m∙₧eme zjistit nap°φklad aktußlnφ hodinu, minutu, m∞sφc a mnohΘ dalÜφ ΦasovΘ ·daje. Zßkladnφ metody si ukß₧eme v tabulce:
Metoda |
Popis |
getDate |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje aktußlnφ den (1 - 31). |
getDay |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje aktußlnφ den v t²dnu. V²slednΘ Φφslo je v rozmezφ 0 (ned∞le) a₧ 6 (sobota). |
getFullYear |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje Φty°mφstnΘ vyjßd°enφ aktußlnφho roku (2003). |
getHours |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje aktußlnφ hodinu. V²slednΘ Φφslo je v rozmezφ 0 a₧ 23. |
getMiliseconds |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje aktußlnφ milisekundu. V²slednΘ Φφslo je v rozmezφ 0 a₧ 999. |
getMinutes |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje aktußlnφ minutu. V²slednΘ Φφslo je v rozmezφ 0 a₧ 59. |
getMonth |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje aktußlnφ m∞sφc. V²slednΘ Φφslo je v rozmezφ 0 (Leden) a₧ 11 (Prosinec). |
getMiliseconds |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje aktußlnφ vte°inu. V²slednΘ Φφslo je v rozmezφ 0 a₧ 59. |
getTime |
Vrßtφ Φφselnou hodnotu, kterß vyjad°uje poΦet vte°in od p∙lnoci 1. ledna 1970. |
- Prßci s datumem si ukß₧eme na p°φklad∞. Otev°eme si nov² dokument (CTRL+N) a vytvo°φme v n∞m novΘ textovΘ pole pomocφ nßstroje Text Tool (T). Do tohoto pole vepφÜeme text "Aktußlnφ datum:".
- Vedle n∞j vytvo°φme dalÜφ pole, kterΘmu nastavφme vlastnost Text type v panelu Properties na Dynamic Text. Nynφ je pot°eba si oznaΦit toto textovΘ pole nßzvem, pomocφ kterΘho se na n∞j budeme v ActionScriptu odkazovat. Zvolme tedy jako vlastnost Variable nßzev nap°φklad "datum".
-
Nynφ toto textovΘ pole vyberme, zvolme Insert->Convert to Symbol... -> Movie Clip a n∞jak jej pojmenujme. VÜe by prozatφm mohlo vypadat nßsledovn∞:
- Vyberme instanci tohoto Movie Clipu a otev°ete panel Actions. Zde zvolme akci "onClipEvent (enterFrame)". Nynφ vyberme akci "set variable" a do pole Variable vepiÜme nßzev instance novΘho objektu Date "AktualniDatum". Do pole Value vlo₧te "Objects -> Core -> Date -> new Date". Nezapome≥me u tohoto pole zaÜkrtnout volbu "Expression".
- Nynφ si pomocφ ActionScriptu vlo₧φme do textovΘho pole aktußlnφ Φas a datum. JednotlivΘ metody m∙₧eme spojovat pomocφ znaku "+" a p°ipojovat k prom∞nnΘ "datum" pomocφ znaku "=". Upravit si budeme muset takΘ metodu "getMonth" tak, ₧e ji pro naÜe ΦasovΘ podmφnky zv∞tÜφme o 1. Cel² zdrojov² k≤d by mohl vypadat nßsledovn∞:
- Pokud nynφ klip spustφte, m∞l by se v textovΘm poli zobrazit aktußlnφ Φas a datum.
- Za "domßcφ ·kol" si m∙₧ete tento p°φklad upravit tak, aby zobrazoval ΦeskΘ nßzvy dn∙. M∙₧ete to ud∞lat tak, ₧e vytvo°φte podmφnku "if" nebo vyu₧ijete pole.
Prßce se zvukem
Prßce se zvukem pat°φ mezi nejzajφmav∞jÜφ vlastnosti, kterΘ Flash obsahuje. M∙₧eme p°idat do sv²ch klip∙ pomocφ zvukov²ch efekt∙ vazbu mezi nßvÜt∞vnφkem a klipem.
K ovlßdßnφ zvuku vyu₧ijeme objekt Sound. Pomocφ tohoto objektu m∙₧eme spouÜt∞t p°ehrßvßnφ zvukov²ch nahrßvek, zastavovat, nastavit hlasitost a dalÜφ r∙znΘ vymo₧enosti.
- Prßci se zvukem si op∞t ukß₧eme na p°φklad∞. Otev°eme si nov² klip, ve kterΘm si vytvo°φme dv∞ tlaΦφtka. Jedno tlaΦφtko bude mφt nßpis "Start" a druhΘ "Stop".
- Do knihovny si naimportujeme zvolen² zvukov² soubor. Flash podporuje v∞tÜinu zvukov²ch soubor∙ (mp3, wav, wmv, atd.). My si naimportujeme tento zvukov² soubor (nachßzφ se ve slo₧ce "priklady/12/"). Zvolme tedy File -> Import... -> dog.wav. Tento soubor nynφ nalezneme v knihovn∞.
- Vytvo°φme instanci naÜich tlaΦφtek na jeviÜte. VÜe by prozatφm mohlo vypadat nßsledovn∞:
-
Nynφ tlaΦφtku start p°i°adφme akci "on (press)" a vytvo°φme si instanci objektu Sound, kterou nazveme "Zvuk".
- K Φemu by nßm byl zvuk v knihovn∞, kdy₧ bychom ho nem∞li jak zavolat. Nastavφme tedy v knihovn∞ (CTRL + L) u naÜeho naimportovanΘho zvuku (dog.wav) vlastnost Linkage... na "Export for ActionScript". Jako identifikßtor zvolφme nßzev "pes".
- Nynφ se vrßtφme k naÜemu tlaΦφtku "Start" a nßmi vytvo°enΘ instanci p°idßme metodu "attachSound", kterß si z knihovny vybere zvukov² klip podle zvolenΘho nßzvu (v naÜem p°φpad∞ "pes"). Tφmto bychom mohli mφt v knihovn∞ n∞kolik zvukov²ch klip∙, kterΘ se budou liÜit identifikßtorem (nßzvem).
- Zvuk m∙₧eme spustit pomocφ metody "start", kterß mß dva parametry. Prvnφm je secondOffset, kter² urΦuje poΦet vte°in, od kter²ch se zvolen² zvuk spustφ. Pokud budeme mφt zvukov² soubor, kter² mß dΘlku 10 vte°in a zvolφme secondOffset na 3, tak se bude zvolen² zvukov² soubor p°ehrßvat a₧ od t°etφ vte°iny. Druh²m parametrem je loops, kter² urΦuje, kolikrßt se bude zvukov² soubor opakovat. Pro nßÜ p°φklad si nastavφme secondOffset na 0 a loops na 10.
- Nynφ p°i°adφme tlaΦφtku "Stop" op∞t akci "on (press)" a p°i°adφme naÜemu objektu metodu "stop", kterß ukonΦφ p°ehrßvßnφ zvuku. Pokud mßme spuÜt∞no vφce zvuk∙ m∙₧eme vyu₧φt metodu "stopAllSound".
- P°φklad m∙₧eme nynφ spustit a vyzkouÜet jej.
- Flash takΘ umo₧≥uje zm∞nu hlasitosti pomocφ metody "setVolume", do kterΘ m∙₧eme dosadit hodnoty 0 (nejni₧Üφ) a₧ 100 (nejvyÜÜφ).
- Pro ·pravu zvuku m∙₧eme takΘ vyu₧φt metodu "setPan", kterß umo₧≥uje urΦit, ze kterΘho reproduktoru bude zvuk vychßzet. M∙₧eme dosadit -100 (lev² reproduktor) a 100 (prav² reproduktor).
- DalÜφ metodou, kterou m∙₧eme vyu₧φt k naΦtenφ zvuku (pouze mp3) je "loadSound". Tato metoda mß op∞t dva parametry. Prvnφ urΦuje HTTP adresu k mp3 souboru a druh² boolean hodnotu, zda je zvolen² zvuk streamovßn.
Cel² p°φklad si m∙₧ete stßhnout a prohlΘdnout zde.
Pro tento dφl to bude vÜe. V p°φÜtφm dφle budeme pokraΦovat v ActionScriptu.
Petr Rympler