Špeciálne textové bloky. Macromedia Flash MX - prvé kroky


Materiály na prednášky, domáce úlohy a testy
dištančný kurz „Elektronická škola Macromedia Flash MX“
Ruský metodický týždenník pre učiteľov informatiky. Vydavateľstvo "Prvý september" č. 42 (2003)
„Analóg programu „Rule“ z balíka „Hits of Robotland“.
v prostredí Macromedia Flash."

Tlačené publikácie

ELEKTRONICKÁ ŠKOLA MACROMEDIA FLASH MX
III kurz: Základy programovania v Macromedia Flash MX
Modul IV: The with Command. Program "Pravidlo"
jazyk ActionScript

Plán expresného modulu:
  • s príkazom
  • Flash duplikát programu „Rule“ z balíka „Hits of Robotland“.

s príkazom

Pri použití objektov v programovom kóde (skript) je ľahké si všimnúť, že aj v malom bloku skriptu sa názov toho istého objektu opakovane opakuje. Takéto opakovania sa vyskytujú obzvlášť často pri použití niektorých individuálnych objektov, napríklad objektov Matematika, patriaci do vyššej úrovne. Napríklad nasledujúci kód je celkom bežný:

A = Math.PI*r*r; x = r * Math.cos(Math.PI); y = r * Math.sin(Math.PI/2);

Tu je objekt Matematika sa vyskytuje opakovane, čo sťažuje porozumenie skriptu. Tento záznam možno výrazne zjednodušiť, ak je blok skriptu uzavretý v zátvorkách pomocou príkazu with. Potom v rámci tohto bloku skriptu interpret jazyka ActionScript pristúpi k určenému objektu. Teraz je možné kód prepísať takto:

S (Matematika) ( a = PI * r * r; x = r * cos(PI); y = r * sin(PI/2); )

Pozrime sa na všeobecný formát príkazu:

s (objektom) (
Vyhlásenia);
}

objekt— inštancia objektu ActionScript alebo filmového klipu.

Vyhlásenia)- príkaz alebo skupina príkazov uzavretých v zložených zátvorkách.

Pozrime sa na ďalší príklad, v ktorom je objekt použitý Filmový klip s názvom someOtherMovieClip:

With (someOtherMovieClip) ( _x = 50; _y = 100; gotoAndStop(3); )

Nasledujúci úryvok skriptu ukazuje, ako je možné napísať predchádzajúci príklad bez použitia príkazu with:

SomeOtherMovieClip._x = 50; someOtherMovieClip._y = 100; someOtherMovieClip.gotoAndStop(3);

Je možné použiť vnorené príkazy na prístup k informáciám v mnohých kontextových oblastiach.

Flash duplikát programu „Pravilka“ z balíka „Hits of Robotland“.

Pri programovaní tlačidiel budeme aktívne využívať operátor vetvenia: ak a ak ešte. Zorganizujeme aj prevádzku počítadla, ktoré používateľovi pripočítava body v prípade správnej odpovede a odpočítava body v prípade, že používateľ bez opravy chyby alebo vykonania nesprávnych opráv stlačí tlačidlo „Ďalej“.

Zorganizujeme prácu na Filmovom klipe (cena), v ktorom bude umiestnený „Fond cien“. Ak používateľ získa 10 bodov, jeho cenou bude košík chutného ovocia. Ak má používateľ 9 alebo 8 bodov ako cenu, dostane kúsok syra, ak má používateľ „šťastie“ 6 alebo 7 bodov, dostane tekvicu, ale ak získa 5 alebo menej ako 5 bodov , dostane paradajku!

Pre tých, ktorí majú radi päťbodové hodnotenie, preložme vyššie uvedené do jazyka dostupného pre školský časopis:

Košík s ovocím - 5 ;
Kúsok syra - 4 ;
tekvica - 3 ;
Paradajka - 2 .

Pri prístupe k filmovému klipu použijeme príkaz with.

Naša scéna bude používať 11 snímok. Prvých 10 snímok budú „pracovné listy“, na ktorých budú umiestnené frázy s gramatickými chybami (vstupný text). Zvyčajne sú vstupné polia prázdne, ale v našom prípade by mali fungovať! Každý hárok bude naprogramovaný s dynamickým poľom. Ak používateľ neopraví gramatickú chybu, zobrazí sa text: „Neopravili ste chybu!“

Tento program používa dve vrstvy. Spodná vrstva je pozadie, obsahuje statický text „Program správne“ a grafický symbol s klobúkom.

Ak chcete na napísanie nadpisu bezpodmienečne použiť nejaké exotické písmo nainštalované na vašom počítači v programe, nezabudnite pre tento text použiť procedúru Break Apart z ponuky Upraviť. Inými slovami, premeňte text na grafiku. A potom sa váš text nezmení na hlúposť na stroji, ktorý toto písmo nemá!

Teraz je všetko v poriadku. Napíšme skript pre rámec 1:

Stop(); fscommand("showmenu", "false"); i = 0;

Pri prehrávaní videa musíte vypnúť „Menu“. Týmto spôsobom nedovolíme používateľovi urobiť „krok späť“. A tiež „zapneme“ pult.
Napíšme akciu pre snímky 2-10:

Pozrime sa, ako fungujú tlačidlá na príklade prvého rámu. Zostávajúce tlačidlá si môžete naprogramovať sami.

On (release) ( if (t1=="Biela chryzantéma") ( i++; gotoAndPlay(2); ) else ( i--; z1 = "Neopravili ste chybu!"; ) )

Teraz vytvoríme „Fond cien“. Poďme tvoriť nový symbol zadajte Filmový klip s názvom cenu v ktorom bude fungovať 5 rámov. Napíšeme propagáciu pre všetky snímky klipu:

Prvá snímka klipu bude prázdna.

Do druhého rámu umiestnime košík s ovocím a rámik označíme: päť.
Do tretieho rámika položíme kúsok syra a rámiku priradíme štítok: štyri.
Do štvrtého rámu umiestnime tekvicu a priraďme k rámu menovku: tri.
Umiestnime paradajku do piateho rámika a priraďme mu menovku: dva.

V tomto programe bola celá táto „rozmanitosť potravín“ importovaná z kolekcie ClipArt97 (súbory wmf). Môžete si však vytvoriť svoj vlastný „Fond cien“, všetko závisí len od vašej fantázie.

Vráťme sa na scénu a na posledný 11. rámček umiestnime klip, ktorý sme vytvorili s cenami. Nezabudnite to na javisku vysloviť. Názov inštancie: cenu. Do tohto rámca napíšeme skript, ktorý analýzou obsahu počítadla „poskytne“ používateľovi cenu:

Stop(); sh = i; s (_root.priz) ( ak (i

Otestujte video. A ak je to potrebné, odladiť.

Na zjednodušenie procesu testovania vytvorte dynamické textové pole na poslednom rámčeku s názvom sh a v tomto poli zobrazte údaje počítadla. Ak to chcete urobiť, pridajte druhý riadok do skriptu 11. snímky:

Po dokončení procesu ladenia odstráňte toto pole a riadok, ktorý ste zadali.

Domáca úloha: Základy programovania v Macromedia Flash MX

Ach, koľko úžasných objavov máme
Pripravte ducha osvietenia
A skúsenosť, syn ťažkých chýb,
A génius, priateľ paradoxov,
A náhoda, Boh vynálezca.
Alexander Sergejevič Puškin, „Eugene Onegin“

Vašou úlohou je vytvoriť video duplikujúce materiál prezentovaný v tejto prednáške. Frázy si môžete vybrať sami.

Ilustračný materiál použitý na vytvorenie „cenového fondu“ videa nájdete v archíve priloženom k ​​prednáškovému materiálu. Tento archív obsahuje súbory vo formáte wmf. Ak tento cenový fond nespĺňa vaše požiadavky, neváhajte byť kreatívny a použite svoju vlastnú knižnicu.

Odošlite svoju dokončenú úlohu ako súbor vo formáte fla (ak veľkosť súboru presahuje 150 kB, archivujte súbor) a pošlite ho svojmu učiteľovi.

Prajem vám veľa úspechov pri učení sa Macromedia Flash MX sami!

Sekcie na tejto stránke:

Teraz si povedzme o tzv špeciálne textové bloky, teda o textových blokoch, ktoré vykonávajú špeciálne funkcie. Momentálne nám však nebudú užitočné, ale budú potrebné, keď začneme písať programy v prostredí Flash (programovaniu sa venuje časť IV táto kniha).

Vstupné polia

Vstupné pole - Ide o akýsi malý textový editor umiestnený v okne programu Windows a určený na zadávanie jednoriadkového alebo viacriadkového textu. Samotný Windows zároveň riadi zadávanie textu: jednoducho zadávame znaky, používame klávesy so šípkami, , , vyberte text, použite schránku, ako v každom „veľkom“ textový editor. Programátori spoločnosti Microsoft tvrdo pracovali na tom, aby boli štandardné vstupné polia systému Windows skutočne pohodlné.

Ak chcete vytvoriť vstupné pole vo Flashi, musíte najskôr umiestniť bežný textový blok na pracovný hárok a vybrať ho pomocou nástroja so šípkou (do textového bloku nemusíte zadávať žiadny text). Ďalej nájdite v ľavom hornom rohu panela Vlastnosti malý rozbaľovací zoznam (pozri obr. 7.4) a vyberte v ňom položku Vstupný text. Ak potom otvoríme výsledný textový blok, uvidíme, čo je znázornené na obr. 7.9.


Čo teda vidíme? A vidíme kompletnú sadu značiek na zmenu veľkosti (uložia sa, aj keď zatvoríme vstupné pole). To znamená, že môžeme meniť aj vertikálnu veľkosť výsledného vstupného poľa. A obdĺžniková značka z pravého horného rohu sa presunie do pravého dolného rohu - to je znak toho, že máme pred sebou vstupné pole.

Panelový pohľad Vlastnosti po výbere vstupného poľa je znázornené na obr. 7.10. Ako vidíme, objavili sa tam doplnkové prvky kontroly, ktoré je potrebné zvážiť.


V prvom rade sa hneď pod zoznamom, ktorý sme práve použili, objavilo pole, v ktorom budeme musieť zadať unikát Názov, identifikácia vstupného poľa Flash, ktoré sme vytvorili. Každé vstupné pole vytvorené na pracovnom hárku musí mať jedinečný názov. Tento názov môže obsahovať písmená ruskej a latinskej abecedy, čísla a podčiarkovníky a musí začínať písmenom alebo podčiarkovníkom.

Pod poľom na zadanie úlohy sledovania je ďalší rozbaľovací zoznam. Použite ho na výber typu vstupného poľa. V tomto zozname sú k dispozícii štyri položky:

? Jedna čiara- pravidelný jednoriadkové vstupné pole;

? Viacriadkový- viacriadkové vstupné pole(inými slovami, oblasť úprav);

? Viacriadkový bez obalu- viacriadkové vstupné pole, ktoré automaticky nepreruší riadok (hoci používateľ môže riadok prerušiť aj manuálne stlačením klávesu );

? heslo- pole na zadanie hesla. Podobné ako bežné jednoriadkové vstupné pole, ale skryje text, ktorý je do neho zadaný, a namiesto toho zobrazí reťazec hviezdičiek.

Napravo od tohto zoznamu je sada troch prepínacích tlačidiel. Prvý z nich je nám už známy - umožňuje používateľovi vybrať text vo vstupnom poli:


Ako je možné vidieť na obr. 7.10 je toto tlačidlo stlačené a deaktivované, t.j. nemožno ho deaktivovať.

Druhé prepínacie tlačidlo, ak je povolené, dáva Flashu pokyn na spracovanie všetkých značiek HTML, ktoré sa vyskytujú v texte:


Ak teda uzatvoríme kúsok textu do značky<В>.. , Flash to zvýrazní tučným písmom. Ak je toto tlačidlo vypnuté, Flash zobrazí text „tak ako je“ spolu so všetkými značkami HTML, ktoré sú v ňom špecifikované.

Vo všeobecnosti je táto funkcia užitočná iba vtedy, ak zadávame obsah vstupného poľa zo skriptu ActionScript, takže je tu popísaná vopred. Podrobné informácie o podpore HTML tagy Vstupné polia a dynamické textové bloky nájdete v online pomocníkovi Flash.

Tretie prepínacie tlačidlo, ak je povolené, spôsobí, že Flash zobrazí okraj okolo vstupného poľa, čím sa podobá štandardnému vstupnému poľu systému Windows:


Ak je vypnutá, vstupné pole má „plochý“ vzhľad.

Ak má byť vstupné pole, ktoré sme vytvorili, súčasťou pôvodného rozhrania, je najlepšie ponechať toto tlačidlo vypnuté. Ak chceme, aby vstupné pole bolo pre používateľa známejšie alebo viditeľnejšie, môžeme toto tlačidlo povoliť.

Napravo od týchto troch tlačidiel je vstupné pole Var. Toto pole určuje názov premennej jazyka ActionScript, do ktorej sa umiestni text zadaný do nami vytvoreného vstupného poľa. Premenná je druh „pamäťovej bunky“ údajov vytvorených v pamäti počítača a má jedinečný názov, podľa ktorého ju možno jednoznačne identifikovať. Na túto premennú môžeme odkazovať menom, extrahovať z nej údaje alebo do nej vložiť novú hodnotu. Premenné budú podrobne prediskutované v Kapitola 19.

Vo vstupnom poli Maximálny počet znakov nastavuje maximálny počet znakov, ktoré doň môže používateľ zadať. Ak toto číslo nechceme obmedziť, tak tam zadáme hodnotu 0 (to je mimochodom predvolená hodnota poľa).

Teraz sa vráťme k téme implementácie fontov, ale vo vzťahu k vstupným poliam (presnejšie ku všetkým špeciálnym textovým blokom). Ide o to, že v tomto prípade sa nevykonáva žiadne vkladanie - Flash ukladá iba názvy použitých písiem. Keď prehráte hotový obrázok, Flash Player najskôr vyhľadá tieto písma na klientskom počítači a ak sú prítomné, použije ich na zobrazenie textu. Ak sa nenájde vhodný font, prehrávač použije najbližší podobný font požadovanému, čo môže spôsobiť skreslenie obrazu. A to nie je vždy prijateľné.

Stále však môžeme prinútiť Flash, aby vložil popisy vybraných znakov fontu určeného pre dané vstupné pole do výsledného súboru Shockwave/Flash. Teraz uvidíme, ako sa to robí.

Výber znakov písma na vloženie sa vykonáva v dialógovom okne Vkladanie znakov(obr. 7.11). Toto okno sa objaví na obrazovke po stlačení tlačidla Vložiť panelov Vlastnosti(pozri obr. 7.10).


Veľký zoznam tohto okna nám umožní vybrať celé skupiny symbolov, ktoré by mali byť vložené do výsledného súboru Shockwave/Flash. Obsahuje pomerne veľa položiek; tie isté, ktoré sú pre nás zaručene užitočné, sú uvedené nižšie:

? Všetky (39477 glyfov)- všetky znaky tohto písma v množstve 39 477. Táto položka je poskytovaná len na informačné účely; v skutočnosti ho sotva niekto využije;

? Veľké písmená (27 glyfov)- veľké latinské písmená (27 znakov);

? Malé písmená (27 glyfov)- malé latinské písmená (tiež 27 znakov);

? Číslice (11 glyfov)- arabské číslice (11 znakov);

?Interpunkcia [!@#$%…] (52 glyfov)- interpunkčné znamienka a špeciálne označenia (52 znakov);

?Základná latinka (95 glyfov)- písmená väčšiny európskych jazykov (95 znakov);

?azbuka (499 glyfov)- Azbukou (499 znakov). Možno najdôležitejší bod v našom prípade.

V tomto zozname je spravidla zvýraznených niekoľko položiek naraz (to je pravda - kto potrebuje písmená bez čísel!). Ak to chcete urobiť, najprv kliknite na prvú položku z množiny tých, ktoré chceme vybrať, a potom stlačte kláves a podržaním klikajte na zostávajúce položky, kým nevyberieme všetko. Potom môžete kľúč uvoľniť .

Pod zoznamom písiem sa nachádza vstupné pole Zahrňte tieto znaky. V ňom môžeme ručne zadať znaky, ktoré je potrebné vložiť. Táto metóda je užitočná, ak chceme do písma vložiť len určité znaky. A ak stlačíme tlačidlo Automatické dopĺňanie, Samotný Flash nahradí v tomto vstupnom poli všetky znaky, ktoré sme použili v texte zvoleného vstupného poľa.

Úplne dole v okne Možnosti postavy je tam malé textové pole Celkový počet glyfov, ukazuje, koľko znakov sme už vybrali na vloženie. Aby sme sa mohli zastaviť v čase.

Tlačidlo Nevkladajte vám umožní rýchlo odstrániť všetky znaky, ktoré sme vybrali na implementáciu. Keď naň kliknete, vstupné pole sa vymaže Zahrňte tieto znaky, a vo veľkom zozname zmizne výber položiek, ktoré sme vybrali.

Nastavením možností vkladania písma v dialógovom okne Vkladanie znakov, treba stlačiť tlačidlo dobre, ich aplikovať. Ak potrebujete tieto nastavenia zrušiť, kliknite na tlačidlo Zrušiť.

Dynamické textové bloky

Často namiesto zobrazenia obyčajného, ​​nemenného textu chcete zobraziť výstup skriptu ActionScript v textovej forme. Takýto skript by mohol napríklad extrahovať správy z webovej stránky Compulents, predpoveď počasia z webovej stránky Aporta a výmenné kurzy z webovej stránky Rambler, pridať k extrahovaným údajom aktuálny čas a toto všetko zobraziť ako text na obrazovke. (Mimochodom, zaujímavý nápad...)

Práve na zobrazovanie textu, ktorý je výsledkom skriptu, sa používajú. dynamické textové bloky.(Bežné textové bloky sa často nazývajú statické.) Možno, že potreba takýchto dynamických textových blokov vzniká častejšie ako pre vstupné polia.

Dynamický textový blok sa vytvára takmer rovnakým spôsobom ako vstupné pole. Vytvorte obyčajný textový blok, vyberte ho pomocou nástroja so šípkou a nájdite ho v ľavom hornom rohu panela Vlastnosti malý rozbaľovací zoznam (pozri obrázok 7.4). Stačí si vybrať položku z tohto zoznamu Dynamický text.

Vybraný dynamický textový blok je podobný vstupnému poľu (pozri obr. 7.9) a panelu Vlastnosti bude vyzerať približne rovnako ako na obr. 7.10. Preto nebudeme uvádzať popis ovládacích prvkov v ňom obsiahnutých, ale obmedzíme sa na poukázanie na existujúce rozdiely.

Rovnaké premenné sa používajú na zobrazenie textu v dynamickom textovom bloku. Skript ActionScript umiestni výstupný text do takejto premennej a prehrávač Flash vykoná výstup. Názov tejto premennej sa zadáva do rovnakého vstupného poľa, ktoré sa nachádza pod zoznamom, pomocou ktorého sme práve zmenili bežný textový blok na dynamický.

Teraz o rozdieloch. V rozhraní je vlastne len jeden rozdiel a navyše je nám už známy. Prepínacie tlačidlo:


Teraz je k dispozícii možnosť zvýraznenia a kopírovania textu umiestneného v dynamickom textovom bloku a ak si to želáme, môžeme to zakázať.

Rozdiel z hľadiska schopností je v tom, že je možné vytvoriť dynamický textový blok rolovateľné. Bežný dynamický blok musí mať určite také rozmery, aby mohol obsiahnuť celý svoj obsah. Pre rolovateľný blok to nie je potrebné: ​​podobne ako oblasti Úprava systému Windows, dokáže „posúvať“ text, ktorý obsahuje. Na ovládanie rolovania budeme musieť napísať vhodné skripty ActionScript – rolovateľný textový blok neobsahuje posuvné lišty.

Ak chcete, aby sa dynamický textový blok dal posúvať, musíte ho najskôr vybrať. Potom by ste mali zapnúť prepínač Posúvateľné Ponuka Text alebo položku kontextovej ponuky textového bloku s rovnakým názvom. Ak je práve otvorený textový blok, môžete dvakrát kliknúť na štvorcovú rukoväť umiestnenú v pravom dolnom rohu výberového obdĺžnika a súčasne držať . Hotový rolovateľný textový blok je znázornený na obr. 7,12; Všimnite si, že značka, na ktorú sme klikli, mala podobu čierneho štvorca.


Pod názvom „Macromedia Flash 8: kurz pre mladého bojovníka“, venovaný tomuto nádhernému softvérovému produktu a Flash technológie. Od dnešného dňa sa témy, o ktorých hovoríme o Flashi, budú viac zameriavať. Preto odteraz v názve vynechám slová „kurz mladých bojovníkov“. Táto okolnosť však vôbec neovplyvní spôsob prezentácie materiálu, ktorého hlavným cieľom je odpovedať na mnohé otázky, ktoré majú začínajúci flash dizajnéri a dať podnet na zamyslenie tým skúseným.

Takže dnes sú na programe komponenty používateľského rozhrania Macromedia Flash Professional 8, ako aj spôsob ich prispôsobenia.


Štandardné Flash 8 komponentov

Najnovšia verzia výkonného grafického balíka Macromedia Flash 8 okrem množstva nástrojov, metód a efektov časovej osi určených na vytváranie kvalitnej animácie obsahuje plnohodnotný objektovo orientovaný programovací jazyk ActionScript 2.0 a množstvo komponentov (postavené v programových blokoch ako Film).

Prečo vôbec potrebujeme komponenty? V mnohých prípadoch výrazne zjednodušujú proces vývoja interaktívnej aplikácie. Pomocou polí na zadávanie údajov a rôznych prepínačov na webových stránkach možno jednoducho vytvárať registračné formuláre, pomocou loaderov ovládať načítanie textových a multimediálnych údajov z rôznych zdrojov atď. Dnes sa zoznámime s jednou z tried komponentov vo Flash 8 – prvkami používateľského rozhrania (User Interface – UI).

Najpopulárnejším objektom vo Flashi je samozrejme tlačidlo. Vo Flashi je prítomný ako typ symbolu aj ako prvok používateľského rozhrania. Komponenty RadioButton, CheckBox, MenuBar atď. sa používajú menej často, no nie sú o nič menej dôležité. Okno komponentov sa vyvolá stlačením Ctrl+F8 alebo z ponuky Window -> Components. Pozrite si tabuľku s hlavnými komponentmi používateľského rozhrania.

Komponent Popis
Akordeón Navigátor formulárov
Upozornenie Textová správa
Tlačidlo Jednoduché tlačidlo
CheckBox začiarkavacie políčko
ComboBox Kombinovaný zoznam
Zoznam Zoznam
Nakladač Nakladací kontajner
Tlačítko na Rádiu Prepínač voliča
TextArea Textová oblasť
okno Kontajner vo forme okna

Dnes sa na príklade nastavenia parametrov prvku používateľského rozhrania s názvom Alert pozrieme na princípy práce so štýlmi komponentov.


Prednastavenie vlastností komponentov

Komponent Alert vám umožňuje zorganizovať malý dialóg medzi používateľom a počítačom. Predstavme si niečo podobné ako program rozprávania Alice, vytvorený v 60. rokoch a disponujúci malou umelou inteligenciou, ktorá umožňovala viesť rozhovor s človekom pomocou jeho odpovedí na predtým položené otázky.

Najprv zmeňme štítky na tlačidlách a napíšme handler pre ich kliknutia. V závislosti od toho, na ktoré tlačidlo používateľ klikol, sa zobrazí špeciálna správa. To všetko je dosiahnuté bez použitia štýlov. Presuňte teda okno Výstraha na prázdny hárok z panela Komponenty a poskytnite mu všetky potrebné nastavenia. Pripomeňme si, že v každom súbore Flash fla je knižnica (vyvolaná stlačením Ctrl+"L"), v ktorej sú uložené inštancie komponentov. Tu sa hodí aj okno Alert. Keďže nechceme, aby sa vždy povaľoval v pracovnom priestore, môžeme ho odtiaľ odstrániť (samozrejme z kresliaceho plátna). Upozornenie zostane v knižnici.

Teraz vyberte prvú snímku na časovej osi, prejdite do sekcie Akcie (F9) a napíšte nasledujúci kód programu: „import mx.controls.Alert“ (viac podrobností nájdete v zozname). Mnohé z požadovaných nastavení je možné nastaviť iba pomocou jazyka ActionScript. Výstražné okno sa vyvoláva procedúrou Alert.show („text“, „názov okna“, „použité tlačidlá“, „okno“, „ovládač kliknutia“, „vybrané tlačidlo“) s mnohými parametrami uvedenými v zátvorkách. Pre použité tlačidlá je „Alert.YES | Alert.NO“ uvedené v jednoduchých úvodzovkách (existujú aj tlačidlá „OK“ a „Cancel“) a pre obsluhu udalosti - funkcia „buttonclick“, ktorú napíšeme trochu neskôr. Teraz zmeňme označenia na tlačidlách "YES" a "NO" pomocou vlastností komponentu Alert "yesLabel" a "noLabel". Potom nastavte požadované rozmery („buttonWidth“ a „buttonHeight“). Pre výber optimálnych parametrov je užitočné spustiť video na testovanie - klávesy "Enter" + Ctrl. Logika funkcie „buttonclick“ je nasledovná: po stlačení tlačidla „Báječné“ sa objaví správa „Nechajte sa!“, keď „Tak-tak“ - „Drž nos hore!“ Aby sa zmeny prejavili, musí popis tejto funkcie a nastavenia komponentu Alert predchádzať volaniu procedúry Alert.show, ako je uvedené v zozname:

Importovať mx.controls.Alert; Alert.buttonWidth=150; Alert.buttonHeight=25; Alert.yesLabel="Úžasné"; Alert.noLabel="Tak-tak..."; buttonclick = function(evt)(if (evt.detail == Alert.YES) (Alert.show("Pokračujte!", "Macromedia Flash 8");) if (evt.detail == Alert.NO) ( Alert .show("Nos hore!", "Macromedia Flash 8");)) Alert.show("Čo sa deje, kamarát?", "Macromedia Flash 8", Alert.YES | Alert.NIE, toto, klikni na tlačidlo , Upozornenie .ÁNO);

Podobným spôsobom môžete zorganizovať komplexnejší dialóg s používateľom.


Práca so štýlmi

Na čo sa používajú štýly? Teraz vysvetlím. Každý komponent vo Flashi má určitú farebnú schému, veľkosť písma atď. Ak však vyvíjate napríklad svoju vlastnú webovú stránku, potom, aby ste neporušili integritu obrázka, budete musieť komponenty „prispôsobiť“ stránke. Myslím, že sa nebudem mýliť, ak poviem, že každý flash dizajnér sa snaží vytvárať svoje videá špeciálnym spôsobom, ktorý je pre neho jedinečný. Pomocou štýlov a tém vo Flashi 8 môžete urobiť každý komponent jedinečným. Nenechajme sa však unášať a sústreďme sa zatiaľ na štýly.

Rozhranie programovania aplikácií formátovania (Styles API) poskytuje používateľovi vlastnosti a metódy, ktoré je možné použiť na zmenu farby komponentu a formátovanie textu na ňom obsiahnutého. Zvyčajne to stačí. Flash 8 sa dodáva s dvoma štýlmi so sadou parametrov: „Halo“ a „Sample“, ktoré sa nachádzajú v súboroch HaloTheme.fla a SampleTheme.fla. Obrázok ukazuje ich umiestnenie vo Windows 2000/XP. Je potrebné poznamenať, že téma „Sample“ má oveľa viac vlastností, takže je vhodnejšie použiť ju na úpravu komponentov. A to sa robí nasledovne:

  1. Zavolá sa príkaz Súbor -> Import -> Otvoriť externú knižnicu a v dialógovom okne sa zadá súbor SampleTheme.fla. Potom na paneli importovanej knižnice vyberte položku Flash UI Components2 -> Themes -> MMDefault. Potom z tohto okna musíte presunúť priečinok so zdrojmi požadovaného komponentu (aktíva) do okna knižnice symbolov aktuálneho dokumentu.
  2. Pomocou metód setStyle (parameter, value) a getStyle (parameter) môžete nastaviť alebo získať hodnotu konkrétneho parametra zvoleného štýlu.

Keďže pracujeme s komponentom Alert, pretiahneme priečinok „Alert Assets“ do knižnice symbolov nášho dokumentu. Potom použijeme štandardné vlastnosti témy „Ukážka“ (pozri výpis).

Global.styles.Alert.setStyle("color", "red"); _global.styles.Alert.setStyle("themeColor", "haloBlue"); _global.styles.Alert.setStyle("backgroundColor", "0xE0C5FE"); _global.styles.Alert.setStyle("fontFamily", "krát nový román"); _global.styles.Alert.setStyle("fontSize", "15");

Farba dialógového okna Výstraha je teraz fialová (0xE0C5FE) a jeho text je teraz modrý s písmom nastaveným na 15 bodov Times New Roman. Je potrebné poznamenať, že symbol Alert bol upravený týmto spôsobom, takže zmeny ovplyvnia všetky jeho inštancie. Popis všetkých vlastností tém Halo a Samlpe nájdete v pomocníkovi Flash 8.


Čo ak mi toto nestačí?

Ak ani pri štýloch vzhľad komponentov nespĺňa vaše estetické požiadavky, potom môžete skúsiť napísať vlastný námet. Ak to chcete urobiť, stačí upraviť alebo nahradiť škrupiny potrebných komponentov v jednej zo štandardných tém. Ak to chcete urobiť, uložte súbor HaloTheme.fla alebo SampleTheme.fla pod jedinečným názvom, načítajte ho, prejdite do okna knižnice symbolov (Window -> Library alebo Ctrl+L), vyberte požadovaný komponent a vyberte možnosť "Upraviť" v kontextovom menu. Niektoré prvky používateľského rozhrania pozostávajú z mnohých častí, takže ich možno ľahko transformovať prekreslením alebo opätovným vytvorením každej časti. Takýmito komponentmi sú Button, CheckBox, ComboBox, DataGrid, RadioButton atď. Ostatné shelly sa kreslia programovo. V tomto prípade na zmenu vzhľad komponent bude musieť upraviť zdrojový kód. Ide napríklad o komponent Alert. Keďže vytvorenie vlastného motívu je časovo náročný proces, nebudeme sa ním podrobne zaoberať. Aspoň zatiaľ. To je všetko.

Vedenie si stanovilo úlohu: treba ju aktualizovať Flash Player. Rozsah: ~ 15 000 počítačov, z ktorých polovica skutočne potrebuje FP.

Zdalo by sa, že v čom je problém - vytvoríme doménovú politiku, vložíme balík MSI a radujeme sa... Ale nie je to tak! Štruktúra spoločnosti je vysoko distribuovaná, t.j. Vo vzdialených lokalitách s kanálom ~1 Mbps na 20 počítačoch je už pretlačenie aj 15 Mb politikmi problém - ráno zamestnanci zapnú počítač a pol hodiny čakajú, kým sa načíta, kým sa všetko stiahne a nainštaluje (resp. jednoducho spadne v dôsledku časového limitu). Nehovoriac o tom, že počítače v takýchto kanceláriách majú nepríjemnú vlastnosť periodického vypadávania z domény.

Potrebovali sme iné riešenie, ktoré by fungovalo bez ohľadu na politiky, nijako nezaťažovalo používateľa a využívalo kanál minimálne (aspoň aby ​​nesťahovali všetci naraz). Možnosti so skriptami tiež neboli vhodné zo zrejmých dôvodov.

Google prišiel na záchranu ako obvykle: ukázalo sa, že môžete nainštalovať interný aktualizačný server a nakonfigurovať na ňom vstavaný aktualizátor FP. V tomto prípade budete musieť iba distribuovať súbor nastavení klientom. Detaily pod strihom.

Nastavenie aktualizačného servera

1. Dostaneme Licenčná zmluva

Spoločnosť Adobe vyžaduje na distribúciu svojho softvéru licenčnú zmluvu. Neporušujme podmienky používania a získajme licenciu (našťastie to nie je vôbec ťažké): FlashPlayer: Adobe Runtimes / Reader Distribution License Agreement. Licencia sa vydáva na dobu jedného roka. Po uplynutí platnosti môžete žiadosť odoslať znova.

2. Zvyšovanie webového servera

Na platforme nezáleží, v mojom prípade prevádzkujem N-tý web na IIS pod Win2012. Nespotrebúva prakticky žiadne zdroje, aj keď je pre tento server už nakonfigurovaných ~ 3000 počítačov.

Nastavenia servera:

  • Prístup cez porty 80, 443 (http, resp. https).
    Prvý je potrebný v podstate na stiahnutie, druhý FP pôjde na XML verziu aktuálnej verzie.
  • Platný certifikát https.
    Vydal som certifikát založený na koreňovom korporátnom certifikáte, ktorý je štandardne prítomný na všetkých počítačoch.
  • Výpis adresára.
    Bez toho som prácu nekontroloval - dokumentácia sa pýta, rozhodol som sa to urobiť tak, ako je napísané.
Nebudem zachádzať do detailov o nastavení servera.

Pre prehľadnosť volajme server FlashPlayerUpdate.domain.local.

3. Stiahnite si zdroje a nahrajte ich na server

V koreňovom adresári webového servera vytvoríme adresárový strom: /pub/flashplayer/update/current/sau/ .

Strom adresárov na mojom serveri:

Ak ste v prvom kroku požiadali o licenciu, ako odpoveď by ste mali dostať list s odkazom, odkiaľ si môžete FlashPlayer stiahnuť - postupujte podľa tohto odkazu. Ak ste ho nedostali alebo ste si ho nevyžiadali, prejdite sem: https://www.adobe.com/products/flashplayer/distribution3.html a stiahnite si archív z odkazu " Stiahnite si zdroje na aktualizáciu na pozadí":

Vydanie rozšírenej podpory alebo verejné vydanie

Tu je potrebné uviesť poznámku. Na stránke sú 2 možnosti sťahovania: štandardné (verejné) a vydanie s rozšírenou podporou. V mojom prípade je dôležitá stabilita a nie sú potrebné nové funkcie, preto bola zvolená možnosť ESR. Zároveň som si pridal určité množstvo hemoroidov: verejnú verziu je možné stiahnuť priamo pomocou skriptu z webovej stránky Macromedia. Stále som nenašiel, ako stiahnuť ESR, takže v mojom prípade je obsah na internom serveri aktualizovaný manuálny mód.

Na konci článku som pripojil 2 skripty PowerShell: pre automatická aktualizácia(iba pre štandardnú verziu; ľahko sa prenesie do bash), na kontrolu aktualizácií a upozornenie e-mailom (pre akúkoľvek verziu vrátane ESR).


Rozbaľte stiahnutý archív do priečinka /pub/flashplayer/update/current/sau/ na serveri.

4. Distribúcia konfiguračného súboru klientom

V závislosti od kapacity systému:

  • 32-bit: C:\Windows\ Systém 32\Macromed\Flash\mms.cfg
  • 64-bit: C:\Windows\ SysWOW64\Macromed\Flash\mms.cfg
Môžete ho distribuovať akýmkoľvek spôsobom. Použil som kombináciu doménovej politiky a antivírusového administračného servera (pre počítače, ktoré opustili doménu).

V súbore povolíme tichú automatickú aktualizáciu, špecifikujeme interval aktualizácie (v dňoch), cestu k nášmu serveru a pre každý prípad aj protokolovanie, aby sme uľahčili diagnostiku problémov, ak sa vyskytnú:

AutoUpdateDisable=0 SilentAutoUpdateEnable=1 AutoUpdateInterval=2 SilentAutoUpdateServerDomain=FlashPlayerUpdate.domain.local SilentAutoUpdateVerboseLogging=1
Ak bolo všetko vykonané správne, Flash Player na klientskych počítačoch by sa mal začať aktualizovať podľa plánu (podľa vyššie uvedeného súboru - raz za 2 dni). Aktualizačná služba Adobe sa zvyčajne spúšťa raz za hodinu, aby skontrolovala podmienky aktualizácie – v tomto čase by mal nástroj Updater vidieť konfiguračný súbor, prekonfigurovať aktualizácie podľa zadaných nastavení a prejsť na nový server skontrolovať verziu.

To znamená, že asi hodinu po distribúcii konfiguračného súboru si môžete v protokoloch na serveri pozrieť požiadavky na kontrolu verzie.

automatizácia

Ako klasický predstaviteľ IT bratstva neznášam rutinnú manuálnu prácu a jednoducho som si nemohol pomôcť, ale zautomatizovať proces overovania a sťahovania Nová verzia. Ako je však uvedené vyššie, zatiaľ som nenašiel spôsob, ako stiahnuť verzie ESR z webovej stránky Macromedia, takže skript používam iba na kontrolu aktualizácií. Návrhy sú vítané.
Skript na automatické sťahovanie aktualizácií
Len pre verejnú verziu!

Logika fungovania: skript hlúpo sťahuje aktualizačné súbory priamo z Macromedia pre verzie 11,15,16,17,18,19 (ak už bola nejaká verzia zo stránky odstránená, skript jednoducho prisahá, že sa nepodarilo stiahnuť a bude preskočiť) a nahradí ho aktualizačným serverom. Žiadna kontrola verzie. Vo fáze testovania som použil tento skript: V noci som ho spustil cez plánovač na serveri.

Ak chcete, môžete tento a nasledujúci skript prekrížiť a získať plnú automatizáciu s kontrolou verzie, upozorneniami a sťahovaním iba v prípade, že existujú aktualizácie.

Parametre skriptu:

  • *FPRoot- cesta ku koreňovému priečinku aktualizačného servera. Lokálne alebo sieťové. Prirodzene, používateľ, z ktorého sa bude skript spúšťať, musí mať práva na zápis do tohto priečinka.
  • FPdownloadRoot- cesta na webovej stránke Macromedia. Toto je predvolene nastavené, ale v prípade potreby sa dá zmeniť.
  • Stiahnite siProxy http:// proxy.domain.local.
  • ProxyCredits
  • UserAgent
  • sila
* - povinný parameter

Príklad použitia:

Powershell.exe -príkaz "& ".\FPUpdater.ps1" -FPRoot "\\FlashPlayerUpdate\pub\flashplayer\update\current\sau" -StiahnuťProxy "http://proxy.domain.local" -ProxyCreds "DOMÉNA\Používateľské meno " -UserAgent "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) ako Gecko""
Všetky parametre môžu byť napevno zakódované do skriptu, ak sú dlhé spúšťacie riadky zastrašujúce.

Skript na kontrolu aktualizácií a upozorňovanie e-mailom
Aktualizácie sa kontrolujú podľa štandardnej verzie, ale keďže sa aktualizujú súčasne (opravy zabezpečenia nikto nezrušil), pôjde to aj pre ESR. Aby skript fungoval, musíte vytvoriť súbor CurrentPublic v koreňovom adresári webového servera (vedľa priečinka pub), do ktorého zadáte aktuálnu verejnú verziu pre ActiveX(na kontrolu sa používa verzia ActiveX).

Operačná logika: skript porovnáva verziu získanú zo súboru CurrentPublic z vášho servera s verziou na serveri Macromedia. Pozerá sa na verziu na serveri podľa logiky automatickej aktualizácie: najprv vyhľadá aktuálnu hlavnú zostavu v XML, prejde do priečinka s hlavnou zostavou a tam sa pozrie na plnú zostavu.

Parametre skriptu:

  • *FPIntServerRoot- Adresa nášho servera. Napríklad: FlashPlayerUpdate.domain.local
  • FPdownloadRoot- cesta na webovej stránke spoločnosti macromedia. Toto je predvolene nastavené, ale v prípade potreby sa dá zmeniť.
  • ESR- skontrolujte verziu ESR (bez tohto príznaku skontroluje verejnú).
  • Stiahnite siProxy- proxy server, ak sa používa vo firme. Napíšte v plnom znení: http:// proxy.domain.local.
  • ProxyCredits- používateľské meno na autorizáciu na serveri proxy.
  • UserAgent- ak chcete zmeniť používateľského agenta, pomocou ktorého sa bude PowerShell sťahovať. Napríklad náš proxy je obmedzený používateľskými agentmi, ja používam agenta Internet Explorer.
  • sila- zakázať kontrolu certifikátov pre rutinu cmdlet Invoke-Webrequest (presnejšie povedané, aby dôverovala všetkým certifikátom).
  • *MailTo- e-mailové adresy, na ktoré budú zasielané upozornenia.
  • *MailFrom- od koho budú prichádzať upozornenia. Napríklad: [e-mail chránený]
  • SmtpServer- smtp server, cez ktorý bude správa odoslaná.
* - povinný parameter

Príklad použitia:

.\FPCheckUpdate.ps1 -FPIntServerRoot "fp-update.domain.local" -ESR -Proxy "http://proxy.domain.local" -UserAgent InternetExplorer -Force -MailTo " [e-mail chránený]","[e-mail chránený]"-MailFrom" [e-mail chránený]" -SmtpServer "smtp.firma.sk"

Použité zdroje

UPD

Mierne oneskorená aktualizácia zo 17.06.2016.

Od napísania tohto článku sa spoločnosti Adobe podarilo dvakrát zmeniť poradie prístupu na stránku sťahovania prehrávača Flash Player. V dôsledku toho sa teraz, aby ste sa dostali na stránku sťahovania, musíte najprv prihlásiť do Adobe ID. To znamená, že možnosť analýza stránky pre verziu ESR už nie je k dispozícii.

Zatiaľ som sa neobťažoval autorizáciou alebo prijímaním a odosielaním súborov cookie cez PowerShell. V dôsledku toho som prerobil skript na kontrolu ESR na stránke distribution3, ktorý môže kedykoľvek zmiznúť. Zatiaľ uvidíme ďalej.

Začiatkom roka som na fóre Adobe položil otázku na tému kontroly aktualizácií verzie ESR. Sľubujú, že niečo vymyslia, no zatiaľ problém stále pretrváva.

UPD2

Na druhý deň sa na distribučnej stránke prehrávača Flash Player objavili nasledujúce informácie (odkaz, ktorý ste dostali, keď ste dostali licenciu na distribúciu):

POZOR! Dôležité zmeny s vydaním Extended Support Release

Vydanie rozšírenej podpory bolo pôvodne navrhnuté tak, aby minimalizovalo čas, ktorý správcovia IT strávia certifikáciou každého nového vydania prehrávača Flash Player: Vydanie rozšírenej podpory obmedzené vydanie zmien zabezpečenia a opráv kritických funkčných problémov. V tom čase bolo v každom vydaní prehrávača Flash Player oveľa viac funkčných zmien ako bezpečnostných zmien. Teraz sa však situácia zmenila: počet proaktívnych a reaktívnych bezpečnostných opatrení výrazne prevyšuje funkčné zmeny. V praxi už vydanie s rozšírenou podporou nechráni IT organizácie pred obrovské množstvo zmeny vykonané v štandardných vydaniach prehrávača Flash Player, ale len znižujú funkčné riziká. V tejto súvislosti bolo prijaté rozhodnutie ukončiť vydanie rozšírenej podpory a sústrediť sa na vývoj iba štandardných vydaní. Pridať značky

Posledný článok bol venovaný animácii. Vytvorili sme animáciu založenú na dopĺňaní pohybu, dopĺňaní tvarov a jednoduchom skladaní pohybu z jednotlivých snímok. Myslím, že je čas prejsť na pokročilejšiu tému a pozrieť sa na nástroj, ktorý vytvára základ pre väčšinu kvalitných Flash filmov.

Tento nástroj je ActionScript, jazyk riadený udalosťami zabudovaný do Flash. Najnovšia verzia ActionScript (ktorý je prítomný vo Flash 5) sa výrazne líši od ActionScriptu, ktorý bol vo Flash 4. Ak v predchádzajúcej verzii išlo o obmedzenú množinu príkazov, ktorá umožňovala iba základné akcie a zadávala sa pomocou nie príliš užívateľsky prívetivého rozhrania, potom je nový ActionScript výkonný jazyk so zvýšenou sadou príkazov, podporou tried, dedičnosti (!) a oveľa pohodlnejšie rozhranie.

ActionScript robí vaše stránky interaktívnymi. Na udalosti môžete reagovať myšou alebo klávesnicou a pri hraní určitého rámca môžete vykonávať akékoľvek akcie.

Pre úplné zvládnutie ActionScriptu je vhodné mať už skúsenosti s programovaním (najlepšie v C++, JavaScript atď.). Jednou z výhod jazyka Flash je však to, že na to, aby ste v ňom mohli písať kvalitný kód, nemusíte byť profesionálom vo Flashi alebo úplne oboznámení s ActionScriptom. Môžete použiť tie jazykové funkcie, ktoré považujete za potrebné pre svoju prácu.

Keďže tento článok je o základoch jazyka, budeme sa v ňom venovať:

  • Panel Akcie je miestom, kde prebieha takmer všetka komunikácia s jazykom ActionScript.
  • Tlačidlá - ako ich prinútiť fungovať tak, ako požadujeme.
  • Cesty – ako sa dostať k potrebným objektom?
  • Základné akcie s Flash karikatúrami (filmovými klipmi) - proces prehrávania filmu budeme riadiť podľa ľubovôle.
  • Ladenie v jazyku ActionScript – okná výstupu a ladenia.

Účelom tohto článku je priblížiť jazyk ActionScript a ukázať, že tento jazyk možno použiť na vytváranie veľmi pôsobivých programov a na vykonávanie základných akcií, vďaka ktorým bude vaša stránka oveľa atraktívnejšia.

Podmienky

Predtým, ako sa pustíme do konkrétnych akcií, niekoľko výrazov jazyka ActionScript:

  • Akcie- toto sú pokyny, ktoré hovoria komiksu Flash, čo má robiť. Od nich pochádza názov jazyka - ActionScript (doslova - akčný skript). Dohodnime sa, že v rámci tohto článku budeme používať termín „pokyny“, aby nedošlo k zámene so skutočnými úkonmi, ktoré budeme vykonávať.
  • Diania- toto sú akcie, ktoré sa vyskytujú pri prehrávaní karikatúry. Udalosti môžu nastať napríklad pri ukončení načítania určitého rámca, keď dosiahneme určitý rámec, keď používateľ stlačí kláves na klávesnici alebo je kurzor myši nad naším objektom.
  • Výrazy je akákoľvek časť inštrukcie, ktorá vytvára hodnotu. Nasledujúce príklady sú výrazy: 2 + 2, 2 * 2, a + b, 2*pi*r, (15 + k) * náhodné (10).
  • Funkcie je blok kódu, ktorý je možné znova použiť. Môžete odovzdať hodnoty do funkcie a získať z nej výsledok návratu. Napríklad, číslo = get_color(15, 24). 15 a 24 sú argumenty (alebo parametre) funkcie get_color, ktorých návratová hodnota sa zapisuje do premennej číslo.
  • triedy sú typy objektov. Napríklad trieda stromu je rastlina. Flash má množstvo preddefinovaných tried (podobne ako triedy JavaScript). Môžete si vytvoriť svoje vlastné triedy alebo upraviť existujúce.
  • Inštancie sú doslova príkladmi určitých tried. Inštanciou rastliny môže byť napríklad strom, ker alebo kvet. Inštancia je už konkrétnym skutočným objektom. Ak je trieda definíciou objektu (inštancie), potom inštancia je už konkrétnym stelesnením, je to trieda v akcii. Každá inštancia môže dostať názov, aby bolo možné cez ňu pristupovať k funkciám alebo premenným objektu.
  • Psovodi sú špeciálne inštrukcie, ktoré spracovávajú udalosti. Napríklad onClipEvent- obsluha úkonov spojených s konkrétnym symbolom (pozri).
  • Operátori sú jazykové prvky, ktoré vypočítavajú hodnoty na základe jedného alebo viacerých argumentov. Napríklad operátor sčítania (+) vráti súčet dvoch hodnôt naľavo a napravo od neho.
  • Premenné sú identifikátory, ktoré môžu uchovávať hodnoty. Napríklad a = 5; alebo meno = "Michael".

Toto sú výrazy, ktoré budeme používať pri diskusii o jazyku ActionScript. Takže…

Panel akcií

Panel akcií slúži na zobrazenie a vstup do programov ActionScript (obr. 1). Panel má dva režimy prevádzky – normálny (pre figuríny) a expertný. V expertnom režime predstavuje zoznam príkazov jednoduché pole na zadávanie textu. V normálnom režime nemôžeme priamo upravovať príkazy. Ak to chcete urobiť, použite panel možností.

Pokyn môžete pridať kliknutím na tlačidlo „+“ (pozri obr. 1) alebo výberom príslušného pokynu v zozname jazykových prvkov. Okrem toho pre všetky akcie vo Flashi existujú kľúčové sekvencie, ktoré sa dajú použiť na vykonanie oveľa rýchlejšie. Sú zobrazené napravo od každej akcie v ponuke tlačidla „+“. Napríklad na pridanie funkcie stop(), musíte stlačiť Esc+st (postupne: Esc, potom „s“, potom „t“).

Pokyn môžete vymazať tak, že ho vyberiete a stlačíte tlačidlo „-“ (alebo jednoducho kláves Delete).

Odporúčam, aby ste hneď nezačali používať expertný režim, ak nemáte skúsenosti s programovaním v jazykoch podobných Jave (C++, Java, JavaScript). Normálny režim má veľkú výhodu, vďaka ktorej je pre začiatočníkov nepostrádateľný – je oveľa menšia šanca robiť chyby v syntaxi jazyka. Začiatočníkom to pomôže rýchlo pochopiť zložitosť jazyka ActionScript.


Ryža. 1 - Akčný panel

Panel akcií zobrazuje akcie aktuálne vybratého objektu alebo rámca.

Tlačidlá

Prvá vec, ktorú chcete, keď sa začnete učiť Flash interaktivitu, je vytvoriť niečo, čo by reagovalo na akcie používateľov, „oživiť“ váš výtvor, pridať spätná väzba. Najjednoduchší spôsob, ako to urobiť, je pomocou tlačidiel. Preto začneme s nimi.

Ako viete, vo Flashi existuje špeciálny typ symbolu na vytváranie tlačidiel - Button (pozri). Predpokladajme, že ste sa už naučili vytvárať tlačidlá, teraz sa naučíme, ako sledovať kliknutia na tieto tlačidlá.

Tlačidlá v Macromedia Flash majú rozsiahly zoznam udalostí, na ktoré môžeme reagovať:

  • stlačte tlačidlo- tlačidlo myši je stlačené, keď je kurzor v tlačidle;
  • uvoľniť- tlačidlo myši sa uvoľní, keď sa kurzor nachádza v tlačidle;
  • uvoľniť Vonku- tlačidlo myši sa uvoľní, keď je kurzor mimo tlačidla;
  • prevrátenie- kurzor myši vstúpi do tlačidla;
  • uvedenie na trh- kurzor presahuje tlačidlo;
  • pretiahnuť- kurzor zadá hranice tlačidla, kým bolo tlačidlo stlačené a tlačidlo myši bolo stlačené;
  • vytiahnuť- kurzor presahuje tlačidlo, kým bolo stlačené tlačidlo a stlačené tlačidlo myši;
  • stlačenie klávesy("kláves") - bol stlačený "kláves". Môžete si pozrieť zoznam klávesov v pomocníkovi Flash (objekt Key) alebo použiť lištu volieb na zadanie požadovaného klávesu.

Žiaľ, Flash si „rozumie“ len s ľavým tlačidlom myši. Pravý sa používa na vyvolanie kontextového menu (kliknutie pravým tlačidlom myši na nejaký Flash karikatúra). Zatiaľ som nenarazil na žiadne spôsoby, ako zachytiť stredný kláves alebo koliesko myši vo Flashi; nemyslím si, že existujú.

Tieto udalosti sú zachytené pomocou smernice na (). Jeho syntax je:

Na (udalosti) (... // Naše akcie)

Nižšie sa môžete pokúsiť spustiť niektoré udalosti sami:

Veľmi často používaným príkladom je sledovanie odkazu po kliknutí na tlačidlo:

Zapnuté (vydanie) ( getURL("http://rubs.boom.ru"); )

Ak chcete otestovať tento scenár, zvýraznite svoje tlačidlo, stlačte Ctrl+Alt+A a vstúpte do programu.

Takto môžete jednoducho zachytiť všetky udalosti spojené s tlačidlom. No, ako ich použiť, je čisto vecou vašej fantázie.

Základné kroky s filmovými klipmi

Obrovské množstvo kreativity vo Flashi pochádza z manipulácie so symbolmi. Takmer všetky základné techniky, všetky triky a efekty sú bez týchto akcií nemožné.

Pomocou jazyka ActionScript môžete s postavami robiť takmer všetko, čo chcete. Musíte si len zapamätať, že tieto akcie možno vykonať iba ako reakciu na akciu používateľa alebo keď sa na časovej osi vyskytne určitý rámec.

Čo teda máme? Uvediem len hlavné (podľa mňa) nástroje. Ostatné nájdete v zozname jazykových prvkov alebo v pomocníkovi.

Funkcie filmových klipov, ktoré možno nazvať:

  • hrať() - spustí alebo obnoví prehrávanie klipu;
  • stop() - zastaví prehrávanie klipu;
  • gotoAndPlay() - prejde na určitú snímku (scénu) a pokračuje v prehrávaní;
  • gotoAndStop() - prejde na konkrétnu snímku (scénu) a zastaví prehrávanie.

Vlastnosti (parametre) klipov, ktoré je možné čítať/zmeniť:

  • _x, _y - súradnice klipu (v pixeloch);
  • _xscale, _yscale - mierka klipu (v percentách), horizontálne a vertikálne;
  • _šírka výška - šírka a výška klipu (v pixeloch);
  • _rotácia - uhol natočenia klipu (v stupňoch);
  • _alfa - priehľadnosť klipu (v percentách);
  • _viditeľné - viditeľnosť.

To nie je všetko, čo sa dá pomocou klipov urobiť. Použite iné parametre, experimentujte, buďte kreatívni!

Mená

Aby sme mali prístup ku klipom, musíme pochopiť pojem názov objektu (názov inštancie) a cestu k objektu (cieľová cesta). Dohodnime sa, že filmový klip a objekt sú pre nás to isté.

Názov objektu je názov konkrétnej inštancie symbolu. Povedzme, že môžeme mať symbol - auto a príklady tohto symbolu sa budú nazývať „Stroj1“, „Stroj2“, „Pickup“, „Záporožie“...

Aby ste mohli pomenovať objekt, musíte objekt vybrať a v paneli Inštancia (Okno->Panely->Inštancia, Ctrl+I) do stĺpca Názov zadať názov objektu (obr. 2 ). Mená môžu pozostávať iba z písmen, číslic a znaku podčiarknutia („_“) a meno nemôže začínať číslom.


Ryža. 2 - Panel inštancií

Cesty

Cesta k objektu je záznam názvu objektu s prihliadnutím na hierarchiu. Pokúsim sa vysvetliť, čo to je.

Viete, že vo Flashi môžu byť objekty vnorené do seba, čím sa vytvorí hierarchia. Takže toto vnorenie poskytuje nielen pohodlie pri manipulácii s objektmi, ale tiež obmedzuje viditeľnosť názvov objektov. Viditeľnosť je obmedzená na jeho úroveň. Objekt môže priamo (podľa názvu) pristupovať iba k objektom v rámci neho, ktoré sú v hierarchii o úroveň nižšie.

Ak chcete získať prístup k objektu na inej úrovni, musíte poznať cestu k nemu. Okrem toho môže byť cesta špecifikovaná buď absolútne (od úplne najvyššej úrovne hierarchie) alebo relatívne (z aktuálnej úrovne).

Cesta obsahuje objekty, cez ktoré musíme „prejsť“ po strome hierarchie, aby sme sa dostali k objektu, ktorý potrebujeme, uvedený cez bodku. Okrem toho existuje niekoľko ukazovateľov (môžeme ich nazvať „virtuálne objekty“), ktoré sú často veľmi užitočné:

toto - ukazovateľ na „seba“ (to znamená na aktuálny objekt). Môže to byť potrebné napríklad vtedy, keď potrebujete odovzdať ukazovateľ na objekt, z ktorého sa táto funkcia volá do funkcie.

_rodič - ukazovateľ na "rodič". Ukazuje na objekt na vyššej úrovni v hierarchii.

_root - "koreň". Toto je začiatok hierarchie. Pri zadávaní absolútnej cesty sa bez neho nezaobídete.

Cesta vyzerá takto:

list.hra ();- pri podpredmete list(listová) funkcia tzv hrať();

_parent.tree.leaf.stop();- predpokladá sa, že na jednej úrovni je objekt strom, ktorý má predmet list, z ktorého sa funkcia volá stop();

_root.banner._visible = false;- urobiť klip banner, ktorá sa nachádza na 1. poschodí, neviditeľná.



Ryža. 3 - Hierarchia klipov

Pre ilustráciu si zoberme hierarchiu 5 objektov (obr. 3). Objekty 1-4 sú na 1. vrstve, objekt 5 je na 2. vrstve. Objekt 2 je vnorený do objektu 1 a objekt 3 je vnorený do objektu 2. Objekty na obrázku sú vizuálne vnorené do seba, ale to v žiadnom prípade neznamená, že by to tak malo byť „v reálnom živote“. Tu sú zoskupené kvôli prehľadnosti. Keďže názov objektu nemôže začínať číslom, zavolajte naše objekty obj1-obj5.

Teraz sa poďme zaoberať cestami. Najprv sa pozrime, ktoré objekty na seba môžu odkazovať menom. obj1 môže kontaktovať obj2, A obj2- Komu obj3, ale v rovnakom čase obj1 nemôžem kontaktovať obj3 priamo, pretože nie je obsiahnutá v obj1, a v obj2.

Povedzme, že prvý objekt potrebuje objekt 3, aby sa znova začal prehrávať od 1. snímky. Tu je postup:

Obj2.obj3.gotoAndPlay(1);

Na to, aby 4. objekt urobil 1. objekt (pozn. pri všetkých podobjektoch!) polopriehľadný, potrebuje do svojho skriptu napísať nasledovné:

Parent.obj1._alpha = 50;

Root.obj1._alpha = 50;

Pretože obj4 je na prvej úrovni hierarchie, potom pre ňu _root A _rodič- rovnaký.

Teraz pre objekt 3 napíšeme skript, ktorý urobí objekt 5 neviditeľným po stlačení tlačidla myši. V skripte pre objekt 3 píšeme:

OnClipEvent (mouseDown) ( _root.obj5._visible = false; )

V tomto úryvku sme použili absolútnu cestu. Ak by sme použili relatívne, vyzeralo by to takto:

Parent._parent._parent.obj5._visible = nepravda;

Dúfam, že som vyriešil problém s cestou.

Vyššie uvedené príklady ukázali nielen to, ako vyzerajú cesty, ale aj to, ako sa volajú funkcie a priraďujú hodnoty vlastností.

Publikácie na danú tému