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

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

 

Flash-ActionScript - 6. lekce

Google       Google       9. 11. 2005       15 104×

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 Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres HCPP16 pořádá od 30. září do 2. října nezisková organizace Paralelní Polis již potřetí, a to ve stejnojmenném bitcoinovém prostoru v pražských Holešovicích. Letos přiveze na třídenní konferenci přes 40 většinou zahraničních speakerů – lídrů z oblastí technologií, decentralizované ekonomiky, politických umění a aktivismu. Náměty jejich přednášek budou také hacking, kryptoměny, věda, svoboda nebo kryptoanarchie.

Reklama
Reklama
Obrázek ke článku ICT PRO školení zaměřené nejenom na ICT

ICT PRO školení zaměřené nejenom na ICT

Dovolte, abychom se představili. Jsme zaměstnanci společnosti ICT Pro, profesionálové v oblasti poskytování komplexních ICT služeb. Neboli služeb spojených s informačními a komunikačními technologiemi, které dnes - ve 21. století - tvoří  nedílnou součást běžného provozu všech moderních firem.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý