Java logo PredDalej

Ako to v zivote takeho pana Appleta chodi.

Kazdy applet pozostava z metod, ktore zdedil od svojho predka triedy

java.applet.Applet

Tieto metody existuju bez toho, aby sme ich sami implementovali a su vyvolane pocas zivota appletu.
V principe kazdy applet vyzera nasledovne (kostra apletu):

import java.awt.*;      // toto je komentar
import java.applet.*;   // 'import' je podobne ako 'include' v C++

public class KostraAppletu extends Applet {     // odvodim vlastny applet
        public void init() { ... }      // inicializacia
        public void start() { ... }     // spustenie
        public void stop() { ... }      // zastavenie behu
        public void destroy() { ... }   // ukoncenie
        public void paint(Graphics g) { ... }   // pozri koniec tejto stranky ...
                        // obsluha uzivatelskych klikani a stlacani klaves ...
        public boolean handleEvent(Event event) {
                return super.handleEvent(event);
        }
}       // koniec appletu KostraAppletu

Pozrime sa na ne trochu podrobnejsie:

Inicializacia appletu

public void init() { // inicializacia appletu }

Kazdy applet sa musi nainicializovat pred tym, ako sa objavi na obrazovke. Nainicializovat znamena alokovat potrebne zdroje, nastavit premenne na pozadovane pociatocne hodnoty. Inicializacia prebieha aj pri opatovnom nahravani.

Spustenie appletu

public void start() { // spustenie appletu }

Tato metoda sa vyvola, ak sa applet spusta tzn. (to znamena) po nahravani a naslednej inicializacii alebo ak sa uzivatel vrati na stranku, kde sa nachadza applet.

Zastavenie appletu

public void stop() { // zastavenie appletu }

Obsluhuje udalosti, ked uzivatel opusta stranku alebo konci pracu s prehliadacom, pripadne, ak je applet inym sposobom opatovne nahravany.

Ukoncenie appletu

public void destroy() { // zanik appletu }

Zabezpecuje "upratovanie" datovych clenov appletu pri ukonceni behu appletu.

Okrem tychto metod applet standardne obsahuje aj ine metody, ktore asi nie je mozne obist pri behu appletu. Prva metoda ma za ulohu sledovat vsetky udalosti, ktore vzniknu pri interakcii s uzivatelom. Zaznamenava pohyb mysi v okne appletu, kliknutie tlacidlom mysi v okne, stlacenie klavesy, ... Jej definicia vyzera nasledovne:

public boolean handleEvent(Event event) {
        return super.handleEvent(event);        // standard. obsluha
}

Druha metoda ma za ulohu prekreslovat vsetko, co je potrebne prekreslit. Jej definicia vyzera nasledovne:

public void paint(Graphics g) { // vykreslenie cohokolvek }

Napriklad ak chceme, aby nas applet obsahoval na obrazovke obdlznik, tak to lahko dosiahneme tymto sposobom:

public void paint(Graphics g) {
        g.drawRect(10,10,100,100);      // (10,10)-->(100,100)
}

tento programovy segment nam vykresli na obrazovku obdlznik farby, ktora je momentalne nastavena. Ak chceme, aby bol nas obdlznik cervenej farby, urobime to nasledovne:

public void paint(Graphics g) {
        g.setColor(new Color(255,0,0));
        g.drawRect(10,10,100,100);      // (10,10)-->(100,100)
}

O tom, preco sa farba meni takymto, na prvy pohlad zlozitym sposobom, sa budeme zaoberat dalej.


Priklady

Na zivotny cyklus ako stvoreny applet Zivot
Pre tych, co nepochopili vyklad zo zafarbenim obdlznika je tu applet Cerveny Stvorec

Zaciatok