Java 2 Útikalauz programozóknak 5.0

elte.java2_utikalauz5.gui
PaintTeszt osztály

java.lang.Object
  extended by java.awt.event.MouseAdapter
      extended by elte.java2_utikalauz5.gui.PaintTeszt
Megvalósított interfészek:
HierarchyListener, MouseListener, Runnable, EventListener

public class PaintTeszt
extends MouseAdapter
implements Runnable, HierarchyListener

Képernyőn mászkáló kukacszerű egyszerű animáció a megjelenítő metódusok használatának szemléltetésére.

A kukac másodpercenként egyet mozog véletlenszerű irányba, és egérkattintással tetszőleges új helyről is indítható. Amennyiben a kukac feje (piros) nem tud új helyre lépni, vagy nem látszana a képernyőn, akkor új helyről fog indulni.

Mióta:
Java 2 Útikalauz programozóknak 5.0
Forrásfájl:
PaintTeszt.java

Mezők
private static long LÉPÉS
          A kukac lépései közti várakozási idő ezredmásodpercben
private  int maxindex
          Az utoljára kirajzolt állapot pontjainak végindexe (+1: darabszáma)
private static int MAXPONT
          A kukacot felépítő négyzetek maximális száma
private static int MÉRET
          A kukacot felépítő négyzetek oldalmérete képpontokban
private  Thread mozgató
          Kukacmozgatást végző programszál
private  LinkedList<Point> pontok
          A kukac pontjai
private  Component vászon
          A megjelenítésre használt grafikus komponens
private  Random véletlen
          Véletlenszámgenerátor a kukacmozgatáshoz
 
Konstruktorok
PaintTeszt(Component vászon)
          Konstruktor a megjelenítésre használt grafikus komponens megadásával.
 
Metódusok
 void hierarchyChanged(HierarchyEvent esemény)
          Animálás indítása és leállítása a vászon láthatóságának változásakor.
 void mousePressed(MouseEvent egéresemény)
          Egérgomb megnyomása.
 void pontoz(String szöveg, boolean mind, boolean töröl, Graphics g)
          A kukac aktuális állapotának kirajzolása.
 void run()
          Kukacmozgatás egy lépésének elvégzése
 void start()
          Kukacmozgatás indítása
 void stop()
          Kukacmozgatás leállítása
private  boolean újpont(Point pont)
          Új pont hozzáadása a kukachoz.
 
java.awt.event.MouseAdapter osztálytól örökölt metódusok
mouseClicked, mouseEntered, mouseExited, mouseReleased
 
java.lang.Object osztálytól örökölt metódusok
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Mezők részletezése

MÉRET

private static final int MÉRET
A kukacot felépítő négyzetek oldalmérete képpontokban

Lásd még:
Konstans mezőértékek

MAXPONT

private static final int MAXPONT
A kukacot felépítő négyzetek maximális száma

Lásd még:
Konstans mezőértékek

LÉPÉS

private static final long LÉPÉS
A kukac lépései közti várakozási idő ezredmásodpercben

Lásd még:
Konstans mezőértékek

vászon

private Component vászon
A megjelenítésre használt grafikus komponens


pontok

private LinkedList<Point> pontok
A kukac pontjai


mozgató

private Thread mozgató
Kukacmozgatást végző programszál


véletlen

private Random véletlen
Véletlenszámgenerátor a kukacmozgatáshoz


maxindex

private int maxindex
Az utoljára kirajzolt állapot pontjainak végindexe (+1: darabszáma)

Konstruktorok részletezése

PaintTeszt

public PaintTeszt(Component vászon)
Konstruktor a megjelenítésre használt grafikus komponens megadásával.

Paraméterek:
vászon - A megjelenítésre használt grafikus komponens
Metódusok részletezése

újpont

private boolean újpont(Point pont)
Új pont hozzáadása a kukachoz. Valóban új pont hozzáadásakor kéri a szükséges területek újrarajzolását is.

Paraméterek:
pont - A hozzáadandó új pont
Visszaadott érték:
igaz, ha a megadott pont még nem volt része a kukacnak

mousePressed

public void mousePressed(MouseEvent egéresemény)
Egérgomb megnyomása.

Megvalósítja:
MouseListener interfész mousePressed metódusát
Felüldefiniálja:
MouseAdapter osztály mousePressed metódusát
Paraméterek:
egéresemény - Az aktuálisan lenyomott gombot reprezentáló esemény

start

public void start()
Kukacmozgatás indítása


stop

public void stop()
Kukacmozgatás leállítása


hierarchyChanged

public void hierarchyChanged(HierarchyEvent esemény)
Animálás indítása és leállítása a vászon láthatóságának változásakor.

Megvalósítja:
HierarchyListener interfész hierarchyChanged metódusát
Paraméterek:
esemény - a komponenshierarchia változási eseménye

run

public void run()
Kukacmozgatás egy lépésének elvégzése

Megvalósítja:
Runnable interfész run metódusát

pontoz

public void pontoz(String szöveg,
                   boolean mind,
                   boolean töröl,
                   Graphics g)
A kukac aktuális állapotának kirajzolása.

Paraméterek:
szöveg - A kirajzolás oka (paint/update)
mind - Igaz értéke esetén minden pont, hamis esetén csak az eddig meg nem jelenített új pontok kirajzolása.
töröl - Igaz esetén a kukac végén az elhagyott pontok törlése.
g - A megjelenítéshez használt rajzolási környezet.

Java 2 Útikalauz programozóknak 5.0