Flash-ActionScript - 6. lekce
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Flash-ActionScript - 6. lekceFlash-ActionScript - 6. lekce

 
Hledat
Moderní platforma pro vytvoření vašeho nového webu – Wix.com.
Nyní už můžete mít web zdarma.
Vybavení pro Laser Game
Spuštěn Filmový magazín

Flash-ActionScript - 6. lekce

Google       Google       9. 11. 2005       16 070×

Tato lekce je poslední z těch, které vysvětlovaly úplné základy, dočtěte se zde o funkcích a jak je používat...

Reklama
Reklama

Funkce

Funkce umožnují seskupit příkazy a později je vykonat. Jedná se o blok kódu, který se jako obvykle ohraničuje složenými závorkami { }. Pokud nevytváříte pouze jednoduchou animaci, tak se bez funkcí určitě neobejdete. Definice se provádí příkazem function a vypadá takhle:

function nazev_funkce(){
příkazy
.
.
.
}
Jak jde z ukázky vidět, každá funkce má svůj název, kterým ji potom budeme volat. Za názvem jsou kulaté závorky, do nich se píší parametry (viz níže), i když jsou prázdné, musí tam být. Zde je jednoduchá ukázka funkce:

function pozdrav(){
  trace("Ahoj,");
  trace("Jak se máš?");
}
Když si tento příklad spustíte, zjistíte, že se nic nestane, to protože funkce nebyla zavolána, uděláte to zapsáním jména s kulatými závorkami: nazev_funkce(); priklad_61.fla

function pozdrav(){
  trace("Ahoj,");
  trace("Jak se máš?");
}
mc.onRelease = function(){
  pozdrav();
}
mc.onRollOver = function(){
  pozdrav();
}

Na začátku je definice funkce pozdav, která má pouze dva příkazy, spustí se když uživatel klikne, nebo najede myší na MovieClip mc, říká se tomu zavolání funkce. Z toho plyne jedna z výhod funkcí - místo psaní stejného kusu kódu na ruzná místa stačí definovat si funkci a potom ji volat, vyplatí se to dvojnásob, pokud je potřeba v daném kusu kódu něco změnit, protože s použitím funkcí stačí upravit definici funkce, namísto vyhledávání a uprávy všech míst. Sejného výsledku s větší námahou byste dosáhli takto:


mc.onRelease = function(){
  trace("Ahoj,");
  trace("Jak se máš?");
}
mc.onRollOver = function(){
  trace("Ahoj,");
  trace("Jak se máš?");
}

Uvnitř funkcí můžeme dokonce volat další funce, teď se naskýtá otázka jak probíhá běh programu. Možná by to zavádělo k tomu, že zavoláním funkce se běh programu rozdvojí a bude probíhat na dvou místech zároveň, opak je pravdou. Pokud zavoláme funkci, běh stávající funkce se pozastaví a proběhne volaná funkce, tak jak je to znázorněno na obrázku 6.1.

priklad_62.fla

function funkce_2(){
	trace(2);
}
function funkce_1(){
	trace(1);
	funkce_2();
	trace(3);
}

funkce_1();

obr. 6.1

Parametry

Funkce jsou sice užitečné už s tím, co jsme si řekli, ale dokáží toho ještě víc. Úplně na začátku lekce jsem se zmínil o parametrech, které se zapisují do závorek. Parametry nejsou nic jiného, než proměnné předávané volané funkci. K čemu je to dobré? Parametry funkci předáváme proměnné, s kterými vykoná různé operaceze použít i proměnné, které předáme pouhým uložením do prostoru MovieClipu a potom pužitím ve funkci, ale to bych určitě nedoporučoval, definováním parametrů funkci jasně udáváme, co funkce potřebuje k jejímu vykonání.

  priklad_62.fla
function secti(a,b){
	trace(a+b);
}
secti(5,6);
//Vypíše 11
Neefektivně by to šlo řešit tímto způsobem, ale jak se později dozvíte, tím bychom zahodili jednu podstatnou výhodu, kterou nám funkce přinášejí:

function secti(){
	trace(a+b);      
}
a = 5;

secti();

Příkaz return

Poslední částí je vrácení hodnoty, provádí se příkazem return. Každá funkce může vrátit proměnnou - výsledek, boolean úspěšnosti atd. Return může být v každé funkci pouze jednou, protože jeho provedením se ukončí.

function secti(a, b) {
	return a+b;
}
trace( secti(5, 6) );
//vypíše 11
c = secti(5, 6);
//uloží do proměnné c výsledek 11

Díky return vrací funkce výsledek, se kterým lze dále pracovat. S funkcemi můžete docílit toho, že si celý program rozdělíte na menší samostatné části, u kterých ani nemusíte vědět co se děje uvnitř, ale zajímá vás pouze vstup (parametry) a výstup (return), to je velmi užitečné při běžných i rozsáhlejších projektech.

Vestavěné funkce

Vestavěné funkce jsou funkce, které jsou přístupně automaticky, nemusíte je definovat, patří k nim napříkad funkce pro kreslení z minulého dílu . Vestavěných funkcí už je v AS 2.0 docela málo, protože se téměř vše převedlo na metody objektů (v dalších dílech), nechávají se tam hlavně kvůli kompatibilitě se staršími verzemi.

Na závěr

V tomto díle jsme dokončili základy ActionScriptu. Teď bych chtěl napsat pár praktických dílů, ve kterých použijeme to, co jsme se již naučili. Poté se podíváme na OOP a další věci z této oblasti.
ÚKOL
Vytvořte program, který přidá po kliknutí na obrázek předmětu (libovolného),
do košíku zboží. Musí to být řešené přes funkci a parametry, košík může být 
dynamic text. Takže takový malý e-shop.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

2 názory  —  2 nové  
Hlasování bylo ukončeno    
0 hlasů
Google
Mezi největší záliby patří programování v Pythonu, PHP či Flashi - ActionScriptu.

Nové články

Obrázek ke článku První český hackathon ve vlaku inspirovaly služby jako  Tinder, Airbnb nebo Uber

První český hackathon ve vlaku inspirovaly služby jako Tinder, Airbnb nebo Uber

Patnáct set kilometrů, cesta přes dva státy, šestnáct hodin programování a přísun
energy drinků, tak by se dal shrnout unikátní hackathon ve vlaku pořádaný Kiwi.com.
Z Prahy do Košic a zpět se svezlo celkem 13 týmů, každý s originálním nápadem. Hlavní
výhru, voucher na letenky v hodnotě 2 500 EUR, si v Praze převzal tým až z Ukrajiny.
Společně naprogramovali aplikaci Fly2event, která vytváří cestovatelské balíčky ušité
uživatelům na míru podle toho, co si „olajkovali“ na Facebooku. Projekt má i podle
organizátorů budoucnost a jeho tvůrci ho v současnosti už spouští na webové stránce
fly2event.com.

Reklama
Reklama
Obrázek ke článku Gamifikace nakupování dorazila i do České republiky

Gamifikace nakupování dorazila i do České republiky

Zákazníci zejména retailových společností jsou často znuděni klasickými věrnostními či motivačními programy. Většinou z toho důvodu, že jsou jeden jako druhý a nepřináší nic nového. Ale i v České republice se projevují zahraniční trendy, nedávno zde totiž vstoupila na trh a rychle se uchytila nová platforma kombinující to nejlepší z věrnostních a motivačních programů, která navíc využívá prvky gamifikace – Rondo.cz. Na hlavní milníky vývoje nálad a motivace zákazníků a nejnovější trendy se zaměřil Jan Hřebabecký, spoluzakladatel Rondo.cz

Obrázek ke článku NopCommerce – datová vrstva a přístup k datům – 2. díl

NopCommerce – datová vrstva a přístup k datům – 2. díl

V minulém článku jsme si představili platformu NopCommerce z globálního pohledu. V dnešním díle se již zaměříme na konkrétní část systému, a to datovou vrstvu. Představíme si základní stavební kameny systému v podobě doménových objektů. Ukážeme si, jakým způsobem rozšířit doménové objekty a jakým způsobem přistupuje NopCommerce k nastavení systému a modulů.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý