sum.kern
Class Bildschirm

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by sum.kern.Bildschirm
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, RootPaneContainer, WindowConstants
Direct Known Subclasses:
Fenster

public class Bildschirm
extends JFrame

Ein Bildschirm ist das Modell des angeschlossenen Computerbildschirms. Er wird durch eine Fenster mit dem Titel "SuM-Programm" realisiert. Auf ihm kann mit Stiften gezeichnet werden. Zu diesem Zweck ist die Zeichenebene auf dem Bildschirm mit einem Koordinatensystem versehen, dessen Ursprung sich in der oberen linken Ecke der Zeichenebene befindet und dessen Achsen horizontal nach rechts und vertikal nach unten gerichtet sind. Die Einheit ist ein Pixel.

Version:
7.5 vom 29.10.2013
Author:
Bernard Schriek
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class
JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class
Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class
Window.AccessibleAWTWindow, Window.Type
 
Nested classes/interfaces inherited from class
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected static Bildschirm hatPrivatschirm
           
protected  Vector hatTastaturpuffer
           
protected static Bildschirm topFenster
           
protected static int zFensternummer
           
protected  int zMausHatPositionX
           
protected  int zMausHatPositionY
           
protected  boolean zTasteIstDoppel
           
protected  boolean zTasteIstUnten
           
 
Fields inherited from class
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
  Bildschirm()
          Der Bildschirm ist mit seiner Zeichenebene initialisiert.
  Bildschirm(boolean pMitDoubleBuffering)
          Der Bildschirm ist mit seiner Zeichenebene initialisiert.
  Bildschirm(int pBreite, int pHoehe)
          Der Bildschirm ist mit seiner Zeichenebene initialisiert.
  Bildschirm(int pBreite, int pHoehe, boolean pMitDoubleBuffering)
          Der Bildschirm ist mit seiner Zeichenebene initialisiert.
  Bildschirm(int pLinks, int pOben, int pBreite, int pHoehe)
          Der Bildschirm ist mit seiner Zeichenebene initialisiert.
  Bildschirm(int pLinks, int pOben, int pBreite, int pHoehe, boolean pMitDoubleBuffering)
          Der Bildschirm ist mit seiner Zeichenebene initialisiert.
protected Bildschirm(int pLinks, int pOben, int pBreite, int pHoehe, String pName, boolean pMitDoubleBuffering)
          Der Bildschirm ist mit seiner Zeichenebene initialisiert.
 
Method Summary
protected  void bearbeiteFokusErhalten()
          wird intern aufgerufen.
 int breite()
          liefert die Breite der Zeichenebene.
protected static void fehler(String pMeldung)
          interne Methode zum Testen
protected  Graphics g()
          wird intern aufgerufen.
 void gibFrei()
          Der Bildschirm wird zerstoert.
protected  Color hintergrundfarbe()
          wird intern aufgerufen.
 int hoehe()
          liefert die Hoehe der Zeichenebene.
 int holeGanzeZahl()
          liefert eine ganze Zahl, die mit einem Eingabedialog gelesen wird.
 int holeGanzeZahl(String pMeldung)
          liefert eine ganze Zahl, die mit einem Eingabedialog gelesen wird.
 String holeText()
          liefert einen Text, der mit einem Eingabedialog gelesen wird.
 String holeText(String pMeldung)
          liefert einen Text, der mit einem Eingabedialog gelesen wird.
 double holeZahl()
          liefert eine (Komma-) Zahl, die mit einem Eingabedialog gelesen wird.
 double holeZahl(String pMeldung)
          liefert eine (Komma-) Zahl, die mit einem Eingabedialog gelesen wird.
protected  void init2DGraphics()
          wird intern aufgerufen.
 void loescheAlles()
          Die Zeichenebene ist danach leer.
protected  void merkeGroesse(int x, int y)
          wird intern aufgerufen.
 void nachVorn()
          macht das Bildschirmfenster zum vordersten Fenster
 void paint(Graphics g)
          wird intern aufgerufen.
protected  JPanel privatPanel()
          wird intern aufgerufen.
 void setzeFarbe(Color pFarbe)
          aendert die Hintergrundfarbe der Zeichenebene.
 void setzeFarbe(int pFarbe)
          aendert die Hintergrundfarbe der Zeichenebene.
protected  void warte(long zeit)
          wird intern aufgerufen.
 void zeichneDich()
          wenn der Blildschirm gepuffert ist, wird das gepufferte Bild jetzt angezeigt, falls der Bildschirm nicht gepuffert ist, bewirkt diese Anweisung nichts.
 
Methods inherited from class
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
 
Methods inherited from class
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFront
 
Methods inherited from class
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface
getFont, postEvent
 

Field Detail

hatPrivatschirm

protected static Bildschirm hatPrivatschirm

hatTastaturpuffer

protected Vector hatTastaturpuffer

topFenster

protected static Bildschirm topFenster

zFensternummer

protected static int zFensternummer

zMausHatPositionX

protected int zMausHatPositionX

zMausHatPositionY

protected int zMausHatPositionY

zTasteIstDoppel

protected boolean zTasteIstDoppel

zTasteIstUnten

protected boolean zTasteIstUnten
Constructor Detail

Bildschirm

public Bildschirm()
Der Bildschirm ist mit seiner Zeichenebene initialisiert. Die Fenstergroesse entspricht der Bildschirmgroesse.


Bildschirm

public Bildschirm(boolean pMitDoubleBuffering)
Der Bildschirm ist mit seiner Zeichenebene initialisiert. Die Fenstergroesse entspricht der Bildschirmgroesse.

Parameters:
pMitDoubleBuffering - soll der Bildschim gepuffert werden

Bildschirm

public Bildschirm(int pBreite,
                  int pHoehe)
Der Bildschirm ist mit seiner Zeichenebene initialisiert. Die Breite und Hoehe des Bildschirms werden als Parameter uebergeben.

Parameters:
pBreite - die Breite des Fensters
pHoehe - die Hoehe des Fensters

Bildschirm

public Bildschirm(int pBreite,
                  int pHoehe,
                  boolean pMitDoubleBuffering)
Der Bildschirm ist mit seiner Zeichenebene initialisiert. Die Breite und Hoehe des Bildschirms werden als Parameter uebergeben.

Parameters:
pBreite - die Breite des Fensters
pHoehe - die Hoehe des Fensters
pMitDoubleBuffering - soll der Bildschim gepuffert werden

Bildschirm

public Bildschirm(int pLinks,
                  int pOben,
                  int pBreite,
                  int pHoehe)
Der Bildschirm ist mit seiner Zeichenebene initialisiert. Die linke obere Ecke sowie die Breite und Hoehe des Bildschirms werden als Parameter uebergeben.

Parameters:
pLinks - der Abstand des Fensters vom linken Bildschirmrand
pOben - der Abstand des Fensters vom oberen Bildschirmrand
pBreite - die Breite des Fensters
pHoehe - die Hoehe des Fensters

Bildschirm

public Bildschirm(int pLinks,
                  int pOben,
                  int pBreite,
                  int pHoehe,
                  boolean pMitDoubleBuffering)
Der Bildschirm ist mit seiner Zeichenebene initialisiert. Die linke obere Ecke sowie die Breite und Hoehe des Bildschirms werden als Parameter uebergeben.

Parameters:
pLinks - der Abstand des Fensters vom linken Bildschirmrand
pOben - der Abstand des Fensters vom oberen Bildschirmrand
pBreite - die Breite des Fensters
pHoehe - die Hoehe des Fensters
pMitDoubleBuffering - soll der Bildschim gepuffert werden

Bildschirm

protected Bildschirm(int pLinks,
                     int pOben,
                     int pBreite,
                     int pHoehe,
                     String pName,
                     boolean pMitDoubleBuffering)
Der Bildschirm ist mit seiner Zeichenebene initialisiert. Die linke obere Ecke sowie die Breite und Hoehe des Bildschirms werden als Parameter uebergeben.

Parameters:
pLinks - der Abstand des Fensters vom linken Bildschirmrand
pOben - der Abstand des Fensters vom oberen Bildschirmrand
pBreite - die Breite des Fensters
pHoehe - die Hoehe des Fensters
pAlsFenster - der Bildschim ist ein zusätzliches Fenster
pMitDoubleBuffering - soll der Bildschim gepuffert werden
Method Detail

bearbeiteFokusErhalten

protected void bearbeiteFokusErhalten()
wird intern aufgerufen.


breite

public int breite()
liefert die Breite der Zeichenebene.

Returns:
die Breite des Fensters

fehler

protected static void fehler(String pMeldung)
interne Methode zum Testen


g

protected Graphics g()
wird intern aufgerufen.


gibFrei

public void gibFrei()
Der Bildschirm wird zerstoert.


hintergrundfarbe

protected Color hintergrundfarbe()
wird intern aufgerufen.


hoehe

public int hoehe()
liefert die Hoehe der Zeichenebene.

Returns:
die Hoehe des Fensters

holeGanzeZahl

public int holeGanzeZahl()
liefert eine ganze Zahl, die mit einem Eingabedialog gelesen wird. Falls die Eingabe keine ganze Zahl ist, wird 0 zurückgegeben.

Returns:
die eingegebene ganze Zahl

holeGanzeZahl

public int holeGanzeZahl(String pMeldung)
liefert eine ganze Zahl, die mit einem Eingabedialog gelesen wird. Falls die Eingabe keine ganze Zahl ist, wird 0 zurückgegeben.

Parameters:
ein - im Eingabedialog angezeigter Text
Returns:
die eingegebene ganze Zahl

holeText

public String holeText()
liefert einen Text, der mit einem Eingabedialog gelesen wird.

Returns:
den eingegebenen Text

holeText

public String holeText(String pMeldung)
liefert einen Text, der mit einem Eingabedialog gelesen wird.

Parameters:
ein - im Eingabedialog angezeigter Text
Returns:
den eingegebenen Text

holeZahl

public double holeZahl()
liefert eine (Komma-) Zahl, die mit einem Eingabedialog gelesen wird. Falls die Eingabe keine Zahl ist, wird 0.0 zurückgegeben.

Returns:
die eingegebene Zahl

holeZahl

public double holeZahl(String pMeldung)
liefert eine (Komma-) Zahl, die mit einem Eingabedialog gelesen wird. Falls die Eingabe keine Zahl ist, wird 0.0 zurückgegeben.

Parameters:
ein - im Eingabedialog angezeigter Text
Returns:
die eingegebene Zahl

init2DGraphics

protected void init2DGraphics()
wird intern aufgerufen.


loescheAlles

public void loescheAlles()
Die Zeichenebene ist danach leer.


merkeGroesse

protected void merkeGroesse(int x,
                            int y)
wird intern aufgerufen.


nachVorn

public void nachVorn()
macht das Bildschirmfenster zum vordersten Fenster


paint

public void paint(Graphics g)
wird intern aufgerufen.

Overrides:
paint in class Window

privatPanel

protected JPanel privatPanel()
wird intern aufgerufen.


setzeFarbe

public void setzeFarbe(Color pFarbe)
aendert die Hintergrundfarbe der Zeichenebene. Alte Zeichnungen auf dem Bildschirm werden geloescht.

Parameters:
pFarbe - die neue Hintergrundfarbe des Bildschirms

setzeFarbe

public void setzeFarbe(int pFarbe)
aendert die Hintergrundfarbe der Zeichenebene. Alte Zeichnungen auf dem Bildschirm werden geloescht.

Parameters:
pFarbe - die neue Hintergrundfarbe des Bildschirms

warte

protected void warte(long zeit)
wird intern aufgerufen.


zeichneDich

public void zeichneDich()
wenn der Blildschirm gepuffert ist, wird das gepufferte Bild jetzt angezeigt, falls der Bildschirm nicht gepuffert ist, bewirkt diese Anweisung nichts.