java.lang.ObjectInteraktionsbrett
public class Interaktionsbrett
Klasse zur einfachen Darstellung elementarer graphischer
Elemente (Punkt, Linie, Rechteck, Kreis), die auf einer
graphischen Fläche angezeigt werden. Neben der
reinen Anzeige gibt es Möglichkeiten, die Elemente
mit der Maus verschiebbar zu machen und bearbeitbar zu
machen. Die zugehörigen Methoden haben zwei
Parameter ein Objekt, das bei einer Änderung
informiert werden soll, und ein String, mit dem es
möglich ist Objekte zu unterscheiden. Wird ein
graphisches Element mit diesen beiden Parametern an ein
Interaktionsbrett übergeben, können mit der
Nutzung dieser Parameter die Elemente verschoben und
gelöscht werden.
Will man die
Maussteuerungsmöglichkeiten nutzen, muss das mit
dem graphischen Element übergebene Objekt eine oder
mehrere der folgenden Methoden implementieren, die dann
vom Interaktionsbrett bei einer Mausaktion aufgerufen
werden.
public Boolean mitMausVerschoben(String name, int x, int y)
public Boolean mitMausAngeklickt(String name, int x, int y)
public Boolean mitMausLosgelassen(String name, int x, int y)
willTasteninfo()
.
Das zu informierende Objekt muss dann eine Methode der
folgenden Form realisieren: public void tasteGedrueckt(String s)
Nested Class Summary | |
---|---|
(package private) class |
Interaktionsbrett.Geo
|
(package private) class |
Interaktionsbrett.Kreis
|
(package private) class |
Interaktionsbrett.Linie
|
(package private) class |
Interaktionsbrett.MalFlaeche
|
(package private) class |
Interaktionsbrett.Paar
|
(package private) class |
Interaktionsbrett.Punkt
|
(package private) class |
Interaktionsbrett.Rechteck
|
(package private) class |
Interaktionsbrett.Text
|
(package private) class |
Interaktionsbrett.Uhr
|
Constructor Summary | |
---|---|
Interaktionsbrett()
Konstruktor zum Erzeugen eines Interaktionsbretts. |
Method Summary | |
---|---|
void |
abwischen()
Methode mit der im wesentlichen der Urzustand des Interaktionsbretts wieder hergestellt wird. |
int |
leseUhr()
Methode zum Ablesen der bisher seit dem Start verbrauchten Zeit. |
void |
loescheObjekt(java.lang.Object quelle,
java.lang.String name)
Ein mit den Parametern quelle und name vorher erzeugtes graphisches Element wird gelöscht. |
void |
neueLinie(int x1,
int y1,
int x2,
int y2)
Methode zum Zeichnen einer neuen Linie. |
void |
neueLinie(java.lang.Object quelle,
java.lang.String name,
int x1,
int y1,
int x2,
int y2)
Methode zum Zeichnen einer neuen Linie, die verändert und deren Nutzung mit der Maus beobachtet werden kann. |
void |
neuerKreis(int x,
int y,
int radius)
Methode zum Zeichnen eines neuen Kreises. |
void |
neuerKreis(java.lang.Object quelle,
java.lang.String name,
int x,
int y,
int radius)
Methode zum Zeichnen eines neuen Kreises, der verändert und dessen Nutzung beobachtet werden kann. |
void |
neuerPunkt(int x,
int y)
Methode zum Zeichnen eines neuen Punktes. |
void |
neuerPunkt(java.lang.Object quelle,
java.lang.String name,
int x,
int y)
Methode zum Zeichnen eines neuen Punktes, der verändert und dessen Nutzung beobachtet werden kann. |
void |
neuerText(int x,
int y,
java.lang.String text)
Methode zur Ausgabe eines Textes. |
void |
neuerText(java.lang.Object quelle,
java.lang.String name,
int x,
int y,
java.lang.String text)
Methode zum Zeichnen eines neuen Textes, der verändert und dessen Nutzung beobachtet werden kann. |
void |
neuesRechteck(int x,
int y,
int breite,
int hoehe)
Methode zum Zeichnen eines neuen Rechtecks. |
void |
neuesRechteck(java.lang.Object quelle,
java.lang.String name,
int x,
int y,
int breite,
int hoehe)
Methode zum Zeichnen eines neuen Rechtecks, das verändert und dessen Nutzung beobachtet werden kann. |
void |
pause(int milli)
Methode, um Bearbeitung für eine kurze in Millisekunden angegebene Zeit anzuhalten. |
void |
starteUhr()
Methode zum Starten der eingeblendeten Stoppuhr. |
int |
stoppeUhr()
Methode zum Stoppen der Stoppuhr. |
int |
textlaenge(java.lang.String text)
Berechnet die Länge eines Textes für eine mögliche graphische Ausgabe. |
void |
textZeigen(java.lang.String text)
Methode zur Änderung des in der Fußzeile angezeigten Textes. |
void |
verschiebeObjektNach(java.lang.Object quelle,
java.lang.String name,
int x,
int y)
Ein mit den Parametern quelle und name vorher erzeugtes graphisches Element wird auf eine neue Position gesetzt. |
void |
willTasteninfo(java.lang.Object o)
Objekte können an ein Interaktionsbrett so übergeben werden, dass sie informiert werden, wenn eine Taste gedrückt wurde. |
int |
zufall(int start,
int ende)
Methode zur Erzeugung einer ganzahligen Zufallszahl zwischen (einschließlich) den übergebenen Grenzen. |
Methods inherited from class |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Interaktionsbrett()
Method Detail |
---|
public void abwischen()
verschiebeObjektNach(.,.)
zu nutzen.
public int leseUhr()
public void loescheObjekt(java.lang.Object quelle, java.lang.String name)
quelle
- Objekt, das zusammen mit einem zu erzeugenden
graphischen Element übergeben wurdename
- identifizierender Text, der zusammen mit einem
zu erzeugenden graphischen Element
übergeben wurde. Das Paar (quelle, name)
soll ein vorher erzeugtes graphisches Element
eindeutig identifizieren.public void neueLinie(int x1, int y1, int x2, int y2)
x1
- x-Koordinate des ersten Punkts der Liniey1
- y-Koordinate des ersten Punkts der Liniex2
- x-Koordinate des zweiten Punkts der Liniey2
- y-Koordinate des zweiten Punkts der Liniepublic void neueLinie(java.lang.Object quelle, java.lang.String name, int x1, int y1, int x2, int y2)
quelle
- Objekt, das informiert werden soll, falls
diese Linie bearbeitet wird (häufig wird
this übergeben).name
- Name des Objekts, der zusätzlich mit an
das zu informierende Objekt übergeben
wird. Das Paar (quelle,name) sollte eindeutig
sein.x1
- x-Koordinate des ersten Punkts der Liniey1
- y-Koordinate des ersten Punkts der Liniex2
- x-Koordinate des zweiten Punkts der Liniey2
- y-Koordinate des zweiten Punkts der Liniepublic void neuerKreis(int x, int y, int radius)
x
- x-Koordinate des Mittelpunkt des Kreisesy
- y-Koordinate des Mittelpunkt des Kreisesradius
- Radius des Kreisespublic void neuerKreis(java.lang.Object quelle, java.lang.String name, int x, int y, int radius)
quelle
- Objekt, das informiert werden soll, falls
dieser Kreis bearbeitet wird (häufig wird
this übergeben).name
- Name des Objekts, der zusätzlich mit an
das zu informierende Objekt übergeben
wird. Das Paar (quelle,name) sollte eindeutig
sein.x
- x-Koordinate des Mittelpunkt des Kreisesy
- y-Koordinate des Mittelpunkt des Kreisesradius
- Radius des Kreisespublic void neuerPunkt(int x, int y)
x
- x-Koordinate des Punktes (beginnend von links
nach rechts)y
- y-Koordinate des Punktes (beginnend von oben
nach unten)public void neuerPunkt(java.lang.Object quelle, java.lang.String name, int x, int y)
quelle
- Objekt, das informiert werden soll, falls
dieser Punkt bearbeitet wird (häufig wird
this übergeben).name
- Name des Objekts, der zusätzlich mit an
das zu informierende Objekt übergeben
wird. Das Paar (quelle,name) sollte eindeutig
sein.x
- x-Koordinate des Punktes (beginnend von links
nach rechts)y
- y-Koordinate des Punktes (beginnend von oben
nach unten)public void neuerText(int x, int y, java.lang.String text)
x
- x-Koordinate des Startpunkts des Textesy
- x-Koordinate des Startpunkts des Textes, legt
auch die Basislinie des Textes festtext
- auszugebender Textpublic void neuerText(java.lang.Object quelle, java.lang.String name, int x, int y, java.lang.String text)
quelle
- Objekt, das informiert werden soll, falls
dieser Text bearbeitet wird (häufig wird
this übergeben).name
- Name des Objekts, der zusätzlich mit an
das zu informierende Objekt übergeben
wird. Das Paar (quelle,name) sollte eindeutig
sein.x
- x-Koordinate des Startpunkts des Textesy
- y-Koordinate des Startpunkts des Textes, legt
auch die Basislinie des Textes festtext
- auszugebender Textpublic void neuesRechteck(int x, int y, int breite, int hoehe)
x
- x-Koordinate der linken oberen Ecke des
Rechtecksy
- y-Koordinate der linken oberen Ecke des
Rechtecksbreite
- Breite des Rechtecks (in Richtung x-Achse)hoehe
- Höhe des Rechtecks (in Richtung y-Achse)public void neuesRechteck(java.lang.Object quelle, java.lang.String name, int x, int y, int breite, int hoehe)
quelle
- Objekt, das informiert werden soll, falls
dieses Rechteck bearbeitet wird (häufig
wird this übergeben).name
- Name des Objekts, der zusätzlich mit an
das zu informierende Objekt übergeben
wird. Das Paar (quelle,name) sollte eindeutig
sein.x
- x-Koordinate der linken oberen Ecke des
Rechtecksy
- y-Koordinate der linken oberen Ecke des
Rechtecksbreite
- Breite des Rechtecks (in Richtung x-Achse)hoehe
- Höhe des Rechtecks (in Richtung y-Achse)public void pause(int milli)
milli
- Zeit in Millisekunden, die der Programmablauf
mindestens angehalten werden sollpublic void starteUhr()
public int stoppeUhr()
public int textlaenge(java.lang.String text)
text
- Text dessen Ausgabelänge in Pixel
bestimmt werden soll
public void textZeigen(java.lang.String text)
text
- neuer anzuzeigender Textpublic void verschiebeObjektNach(java.lang.Object quelle, java.lang.String name, int x, int y)
quelle
- Objekt, das zusammen mit einem zu erzeugenden
graphischen Element übergeben wurdename
- identifizierender Text, der zusammen mit einem
zu erzeugenden graphischen Element
übergeben wurde. Das Paar (quelle name)
soll ein vorher erzeugtes graphisches Element
eindeutig identifizieren.x
- neue x-Koordniate des graphischen Elementsy
- neue y-Koordniate des graphischen Elementspublic void willTasteninfo(java.lang.Object o)
public void tasteGedrueckt(String s)
o
- Objekt, dass informiert werden möchte,
wenn im Interaktionsbrett eine Taste
gedrückt wurdepublic int zufall(int start, int ende)
start
- minimal möglicher Zufallswertende
- maximal möglicher Zufallswert