Kazdy applet pozostava z metod, ktore zdedil od svojho predka triedy
java.applet.AppletTieto 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 KostraAppletuPozrime 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