java.lang.ObjectLeinwand
public class Leinwand
Leinwand ist eine Klasse, die einfache Zeichenoperationen auf einer leinwandartigen Zeichenflaeche ermoeglicht. Sie ist eine vereinfachte Version der Klasse Canvas (englisch fuer Leinwand) des JDK und wurde speziell fuer das Projekt "Figuren" geschrieben.
In der erweiterten Fassung kann die Leinwand zusaetzlich auch Texte darstellen und Tastaturbefehle abfragen. Dadurch ist es moeglich, einfache Spiele auf der Leinwand zu programmieren. Die Farbpalette der Methode setzeZeichenfarbe () wird schrittweise erweitert, um den Anwendungsbeduerfnissen gerecht zu werden.
Method Summary | |
---|---|
void |
componentHidden(java.awt.event.ComponentEvent e)
Reagiere nicht auf das Verstecken der Zeichenflaeche. |
void |
componentMoved(java.awt.event.ComponentEvent e)
Reagiere nicht auf das Bewegen der Zeichenflaeche. |
void |
componentResized(java.awt.event.ComponentEvent e)
Reagiere auf Groessenaenderungen der Zeichenflaeche, indem Du den Beobachtern die neue Breite und Hoehe mitteilst. |
void |
componentShown(java.awt.event.ComponentEvent e)
Reagiere nicht auf das Zeigen der Zeichenflaeche. |
void |
entferne(java.lang.Object figur)
Entferne die gegebene Figur von der Leinwand. |
void |
erneutZeichnen()
Zeichne erneut alle Figuren und Texte auf der Leinwand. |
static Leinwand |
erzeugeLeinwand(java.lang.String titel,
int breite,
int hoehe,
java.awt.Color grundfarbe)
Erzeuge die einzig verfuegbare Leinwand (also den "leinwandSingleton"). |
int |
gibBreite()
Nenne die Breite der Zeichenflaeche. |
javax.swing.JFrame |
gibFenster()
|
int |
gibHoehe()
Nenne die Hoehe der Zeichenflaeche. |
static Leinwand |
gibLeinwand()
Gib die einzige verfuegbare Leinwand zurueck (also den "leinwandSingleton"). |
void |
loescheAlsBeobachter(LeinwandBeobachter b)
Loesche einen Leinwandbeobachter. |
void |
radiere(java.lang.Object text)
Radiere den gegebenen Text von der Leinwand. |
void |
schreibe(java.lang.Object text,
java.awt.Color farbe,
java.lang.String zeichenkette,
int x,
int y,
int groesse)
Schreibe fuer das gegebene Text-Objekt eine Zeichenkette (einen String) auf die Leinwand. |
void |
setzeSichtbarkeit(boolean sichtbar)
Setze, ob diese Leinwand sichtbar sein soll oder nicht. |
void |
setzeZeichenfarbe(java.awt.Paint farbe)
Setze die Zeichenfarbe der Leinwand. |
void |
speichereAlsBeobachter(LeinwandBeobachter b)
Speichere einen Leinwandbeobachter. |
java.awt.event.KeyEvent |
tastendruck()
Gib den letzten, noch nicht verarbeiteten Tastendruck zurueck, den die Leinwand empfangen hat. |
void |
warte(int millisekunden)
Warte fuer die angegebenen Millisekunden. |
void |
zeichne(java.lang.Object figur,
java.awt.Paint farbe,
java.awt.Shape shape)
Zeichne fuer das gegebene Figur-Objekt eine Java-Figur (einen Shape) auf die Leinwand. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public void componentHidden(java.awt.event.ComponentEvent e)
componentHidden
in interface java.awt.event.ComponentListener
public void componentMoved(java.awt.event.ComponentEvent e)
componentMoved
in interface java.awt.event.ComponentListener
public void componentResized(java.awt.event.ComponentEvent e)
componentResized
in interface java.awt.event.ComponentListener
public void componentShown(java.awt.event.ComponentEvent e)
componentShown
in interface java.awt.event.ComponentListener
public void entferne(java.lang.Object figur)
figur
- die Figur, deren Shape entfernt werden sollpublic void erneutZeichnen()
public static Leinwand erzeugeLeinwand(java.lang.String titel, int breite, int hoehe, java.awt.Color grundfarbe)
titel
- Titel, der im Rahmen der Leinwand angezeigt wirdbreite
- die gewuenschte Breite der Leinwandhoehe
- die gewuenschte Hoehe der Leinwandgrundfarbe
- die Hintergrundfarbe der Leinwandpublic int gibBreite()
public javax.swing.JFrame gibFenster()
public int gibHoehe()
public static Leinwand gibLeinwand()
public void loescheAlsBeobachter(LeinwandBeobachter b)
b
- Der Leinwandbeobachter.public void radiere(java.lang.Object text)
text
- der Text, dessen Zeichenkette entfernt werden sollpublic void schreibe(java.lang.Object text, java.awt.Color farbe, java.lang.String zeichenkette, int x, int y, int groesse)
text
- das Text-Objekt, fuer das ein String geschrieben werden sollfarbe
- die Farbe des Texteszeichenkette
- ein Objekt der Klasse String, das tatsaechlich geschrieben wirdx
- x-Koordinate des Textesy
- y-Koordinate des Textesgroesse
- Schriftgroesse des Textespublic void setzeSichtbarkeit(boolean sichtbar)
sichtbar
- boolean fuer die gewuenschte Sichtbarkeit: true fuer sichtbar,
false fuer nicht sichtbar.public void setzeZeichenfarbe(java.awt.Paint farbe)
farbe
- die neue Zeichenfarbe.public void speichereAlsBeobachter(LeinwandBeobachter b)
b
- Der Leinwandbeobachter.public java.awt.event.KeyEvent tastendruck()
public void warte(int millisekunden)
millisekunden
- die zu wartenden Millisekundenpublic void zeichne(java.lang.Object figur, java.awt.Paint farbe, java.awt.Shape shape)
figur
- das Figur-Objekt, fuer das ein Shape gezeichnet werden sollfarbe
- die Farbe der Figurshape
- ein Objekt der Klasse Shape, das tatsaechlich gezeichnet wird