Class Leinwand

java.lang.Object
  extended by Leinwand

public class Leinwand
extends java.lang.Object

Leinwand ist eine Klasse, die einfache Zeichenoperationen auf einer leinwandartigen Zeichenfläche ermöglicht. Sie ist eine vereinfachte Version der Klasse Canvas (englisch für Leinwand) des JDK und wurde speziell für das Projekt "Figuren" geschrieben.

In der erweiterten Fassung kann die Leinwand zusätzlich auch Texte darstellen und Tastaturbefehle abfragen. Dadurch ist es möglich, einfache Spiele auf der Leinwand zu programmieren. Die Farbpalette der Methode setzeZeichenfarbe () wird schrittweise erweitert, um den Anwendungsbedürfnissen gerecht zu werden.


Method Summary
 void entferne(java.lang.Object figur)
          Entferne die gegebene Figur von der Leinwand.
 javax.swing.JFrame gibFenster()
          Nenne das Fenster der Leinwand.
 java.awt.Shape gibForm(java.lang.Object figur)
          Nenne den Shape zu einer Figur.
static Leinwand gibLeinwand()
          Fabrikmethode, die eine Referenz auf das einzige Exemplar dieser Klasse zurückliefert.
 javax.swing.JPanel gibZeichenflaeche()
          Nenne die Zeichenfläche der Leinwand.
 void radiere(java.lang.Object text)
          Radiere den gegebenen Text von der Leinwand.
 void schreibe(java.lang.Object text, java.lang.String farbe, java.lang.String zeichenkette, int x, int y, int groesse)
          Schreibe für 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.lang.String farbname)
          Setze die Zeichenfarbe der Leinwand.
 java.awt.event.KeyEvent tastendruck()
          Gib den letzten, noch nicht verarbeiteten Tastendruck zurück, den die Leinwand empfangen hat.
 void warte(int millisekunden)
          Warte für die angegebenen Millisekunden.
 void zeichne(java.lang.Object figur, java.lang.String farbe, java.awt.Shape shape)
          Zeichne für 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

entferne

public void entferne(java.lang.Object figur)
Entferne die gegebene Figur von der Leinwand.

Parameters:
figur - die Figur, deren Shape entfernt werden soll

gibFenster

public javax.swing.JFrame gibFenster()
Nenne das Fenster der Leinwand.


gibForm

public java.awt.Shape gibForm(java.lang.Object figur)
Nenne den Shape zu einer Figur.

Parameters:
figur - die Figur, deren Shape genannt werden soll

gibLeinwand

public static Leinwand gibLeinwand()
Fabrikmethode, die eine Referenz auf das einzige Exemplar dieser Klasse zurückliefert. Wenn es von einer Klasse nur genau ein Exemplar gibt, wird dieses als 'Singleton' bezeichnet.


gibZeichenflaeche

public javax.swing.JPanel gibZeichenflaeche()
Nenne die Zeichenfläche der Leinwand.


radiere

public void radiere(java.lang.Object text)
Radiere den gegebenen Text von der Leinwand.

Parameters:
text - der Text, dessen Zeichenkette entfernt werden soll

schreibe

public void schreibe(java.lang.Object text,
                     java.lang.String farbe,
                     java.lang.String zeichenkette,
                     int x,
                     int y,
                     int groesse)
Schreibe für das gegebene Text-Objekt eine Zeichenkette (einen String) auf die Leinwand.

Parameters:
text - das Text-Objekt, für das ein String geschrieben werden soll
farbe - die Farbe des Textes
zeichenkette - ein Objekt der Klasse String, das tatsächlich geschrieben wird
x - x-Koordinate des Textes
y - y-Koordinate des Textes
groesse - Schriftgroesse des Textes

setzeSichtbarkeit

public void setzeSichtbarkeit(boolean sichtbar)
Setze, ob diese Leinwand sichtbar sein soll oder nicht. Wenn die Leinwand sichtbar gemacht wird, wird ihr Fenster in den Vordergrund geholt. Diese Operation kann auch benutzt werden, um ein bereits sichtbares Leinwandfenster in den Vordergrund (vor andere Fenster) zu holen.

Parameters:
sichtbar - boolean für die gewünschte Sichtbarkeit: true für sichtbar, false für nicht sichtbar.

setzeZeichenfarbe

public void setzeZeichenfarbe(java.lang.String farbname)
Setze die Zeichenfarbe der Leinwand.

Parameters:
farbname - der Name der neuen Zeichenfarbe.

tastendruck

public java.awt.event.KeyEvent tastendruck()
Gib den letzten, noch nicht verarbeiteten Tastendruck zurück, den die Leinwand empfangen hat. Falls kein Tastendruck vorkam, wird null zurückgegeben.


warte

public void warte(int millisekunden)
Warte für die angegebenen Millisekunden. Mit dieser Operation wird eine Verzögerung definiert, die für animierte Zeichnungen benutzt werden kann.

Parameters:
millisekunden - die zu wartenden Millisekunden

zeichne

public void zeichne(java.lang.Object figur,
                    java.lang.String farbe,
                    java.awt.Shape shape)
Zeichne für das gegebene Figur-Objekt eine Java-Figur (einen Shape) auf die Leinwand.

Parameters:
figur - das Figur-Objekt, für das ein Shape gezeichnet werden soll
farbe - die Farbe der Figur
shape - ein Objekt der Klasse Shape, das tatsächlich gezeichnet wird