Reklama

zonerbooks.cz | zoner.cz | czechia.com | regzone.cz | inshop.cz | inmail.cz | zonerpress.cz | zonerantivirus.com | zonerama.cz

interval.cz

Vytváříme počítadlo ve Flashi 5

13. 12. 2001 | Jan Holzäpfel | Flash | Komentáře: 0

Ve Flashi si můžete vytvořit jednoduché počítadlo, které bude natolik univerzální, že bude splňovat i ty nejnáročnější požadavky. Bez ohledu na návštěvníkovy textové fonty, zobrazí přesně ten typ písma, jaký jste zvolili vy.

Nejprve si připravte v panelu Movie (Ctrl+M) velikost hrací plochy 160 x 45 px. Barvu pozadí si zvolte v hexa kódu (#ffd000) a ostatní parametry ponechte v základním nastavení.

Panel Movie

Nyní si připravte jednotlivá čísla do počítadla. Vytvořte si pomocí kláves nový symbol - Movie clip (Ctrl+F8), který pojmenujte "Cisla". V panelu Text si vyberte podle vlastní potřeby font - např. VAGRounded BT, velikost 36, barvu černou a v panelu Paragraph nastavte zarovnání textu na střed.

Panel Text

Pomocí nástroje text (T) si napište číslici "0" a pomocí panelu Align zarovnejte na střed plochy. Nyní si pomocí klávesy F6 nakopírujte jednotlivé framy až do políčka 10. Vraťte se zpátky na frame 1. Vyberte si číslici a po jejím označení ji příkazem Ctrl+B rozbijte (Break).

Editace a rozbití (break)

Ve frame 2 si nejdříve pomocí editace přepište číslici z "0" na "1" a následně rozbijte (Ctrl+B). Stejným způsobem postupujte i v následujících framech až do políčka 10, kde bude rozbité číslo "9". To znamená, že v editaci bude číslo vždy o jedničku vyšší než je pořadové číslo frame.

Nyní se vraťte do hlavní scény a připravte si počítadlo. Otevřete si knihovnu (Ctrl+L) a přemístěte MC "cisla" na plochu. Stiskem pravého tlačítka nad daným Movie clipem si z nabídky vyberte Actions a vložte následující akci:

onClipEvent (enterFrame) {
gotoAndStop ((Number(_root.ukaz.substr(0,1)))+1);
}

Z instance, kterou jste si vytvořili z MC "cisla", si vytvořte dalších pět duplikátů příkazem Ctrl+D. Pomocí panelu Info nastavte přesné souřadnice jednotlivých instancí. U všech instancí bude y hodnota 10 px. První instance bude mít následující souřadnice: x=8. Další instance budou mít následující hodnoty 33, 58, 83, 108 a 133 px.

Panel Info

Nyní, když už víte, která instance bude první, druhá ..., šestá, poopravte jednotlivé skripty. Nad každou instancí si pravým tlačítkem myši vyvoláte Actions a změníte tam následující příkaz:

gotoAndStop ((Number(_root.ukaz.substr(1,1)))+1); // instance v pořadí č.2
gotoAndStop ((Number(_root.ukaz.substr(2,1)))+1); // instance v pořadí č.3
gotoAndStop ((Number(_root.ukaz.substr(3,1)))+1); // instance v pořadí č.4
gotoAndStop ((Number(_root.ukaz.substr(4,1)))+1); // instance v pořadí č.5
gotoAndStop ((Number(_root.ukaz.substr(5,1)))+1); // instance v pořadí č.6

Stisknutým levým tlačítkem nad frame 1 přetáhněte obsah tohoto frame na frame 5. Klávesou F5 vytvořte na políčku 10 prázdný snímek. Pomocí příkazu Insert Layer vložte novou vrstvu, do které umístíte jednotlivé akce.

Do políčka číslo 1 vložte následující akci, která zajistí zavolání PHP skriptu, umístěného na serveru ve stejném adresáři jako swf soubor - server musí podporovat PHP jazyk. Většina serverů tento jazyk podporuje, ale nejlépe to zjistíte dotazem u vašeho administrátora. Tuto funkci tedy nemůžete otestovat na domácím počítači, který PHP nepodporuje.

loadVariablesNum ("pocitadlo.php?ran="+random(999), 0);

Inicializací tohoto skriptu dochází k navýšení proměnné POCET, označující počet návštěv této stránky.

Kurzor umístěte do políčka č. 3 a stiskem klávesy F6 si vytvořte další klíčový snímek, do kterého umístěte následující akci:

loadVariablesNum ("pocitadlo.txt?ran="+random(999), 0);

Tento skript si načte z textového souboru proměnnou POCET, jejíž hodnota vyjadřuje počet návštěv dané stránky a další příkazy Action scriptu s ní budou dále pracovat.

Do vytvořeného klíčového snímku (F6) ve framu 5 umístěte následující akci:

pocet = Number (pocet);
ukaz = "";
poc = pocet;
for (i=6; i>(poc.toString().length); i--) {
ukaz = "0"+ukaz;
}
ukaz = ukaz+pocet;

Výše uvedené řádky zajistí, že se číslo, informující o počtu návštěvníků našeho webu, doplní zleva o patřičný počet nul.

Do políčka 10 vložte (opět za pomocí klíčového snímku - F6) poslední akci, aby nedocházelo k opakovanému přehrávání časové osy:

stop ();

Tím máte připravený zdrojový soubor ve Flashi. Jak jsem uvedl výše, stiskem kláves Ctrl+Enter si bohužel nemůžete otestovat funkčnost tohoto prográmku.

Připravte si PHP a TXT soubor, který si můžete napsat v Notepadu. Nejdříve si připravte PHP script - vytvořte si nový soubor, který pojmenujte "pocitadlo.php".

< ?
$filename = "pocitadlo.txt";
$fp = fopen( $filename,"r");
$Old = fread($fp, 100);
fclose( $fp );
$Old = split ("=", $Old, 5);
$Newpocet = $Old[1] + '1';
$New = "Pocet=$Newpocet";
$fp = fopen( $filename,"w+");
if (flock($fp, 2)) {
fwrite($fp, $New, 100); }
fclose( $fp );
?>

Abych vám ušetřil jeho psaní, soubor "pocitadlo.php" je připraven ke stažení na konci článku.

K dokončení počítadla zbývá ještě příprava posledního souboru, ze kterého si PHP script načítá hodnotu proměnné POCET.

V Notepadu si vytvořte nový soubor, který pojmenujte "pocitadlo.txt" a do kterého napište následující jeden řádek (soubor pak můžete zavřít a uložit):

pocet=0

U tohoto nově vytvořeného souboru budete muset změnit Chmod na 666! (např. pomocí Windows Commander přímo na serveru následujícím postupem: soubory --> změny atributů --> a zaškrtněte políčka dle obrázku.

Změna atributů

Veškeré zdrojové soubory použité v tomto článku (*.fla, *.php, *.txt) si můžete stáhnout zde (6,22 kB).

Starší komentáře ke článku

Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.


Reklama


Další aktuální články na interval.cz

Tematicky související články

Dejte vědět i ostatním o článku

Diskuse (počet komentářů: 0)

Buďte prvním návštěvníkem, který přidá nový komentář.

Přidat nový komentář

Jméno a e-mail jsou nepovinné. Příspěvky obsahující odkaz jsou moderovány.

Zoner AntiVirus Free pro Android
zabezpečte si svůj smartphone, zdarma
Profesionální eshop Zoner inShop od 990 Kč.
Reklama
Reklama

Syndikace

hledáme nové autory | redakce interval.cz | reklama na interval.cz

© ZONER software, a.s., všechna práva vyhrazena, interval.cz dodržuje právní předpisy o ochraně osobních údajů. Powered by WordPress.