Java (laboratorium)

zadanie nr 7

W pakiecie roznosci.oczy zdefiniuj aplet, który będzie śledził kursor myszki. Zdefiniowana przez Ciebie klasa Oczy ma dziedziczyć po java.applet.Applet. Wygląd apletu to pomarańczowy prostokąt z parą oczu. Oczy mają pozostawać zamknięte zawsze wtedy, gdy kursor myszy jest poza powierzchnią apletu. Gdy kursor znajdzie się nad apletem, oczy mają się na niego patrzeć (czasami bardzo zezując). Wzrok oczu ma podążać za ruchem kursora. Zdefiniuj Oko jako osobny obiekt, który będzie się potrafił narysować.

    class Oko
    {
        int x, y ; // współrzędne oka
        int r ; // promień oka
        Color kolor ; // kolor oka
        // ...
        public void rysujZamknięte (Graphics gr) {/*...*/}
        public void rysujOtwarte (Graphics gr, int xMyszki, int yMyszki) {/*...*/}
    }

Odrysowując oczy na powierzchni apletu należy zastosować podwójne buforowanie.

    public class Oczy extends Applet
    {
        Oko lewe, prawe ; // oczy w aplecie
        // ...
        public void update (Graphics gr) {/*...*/}
        public void paint (Graphics gr) {/*...*/}
    }
Do obsługi zdarzeń mouseEntered, mouseExited, mouseMoved i mouseDragged pochodzących od myszki

zdefiniuj osobny obiekt implementujący interfejsy MouseListener i MouseMotionListener.

    class ZdarzemiaMyszki extends MouseAdapter implements MouseMotionListener
    {
        // ...
    }

W trakcie działania apletu (od wywołania metody start() do wywołania metody stop()) powinna być odtwarzana jakaś muzyka (należy poszukać czegoś gustownego w internecie). Plik muzyczny należy umieścić w katalogu roznosci/oczy/sound/.

Aplet wraz z muzyką należy umieścić w archiwum poleceniem jar. Następnie skonstruuj prostą stronę html’ową z tak przygotowanym apletem.

Program należy opatrzeć stosownymi komentarzami dokumentacyjnymi i na końcu wygenerować dokumentację poleceniem javadoc.

Paweł Rzechonek

Wrocław, 23 listopada 2004.