Abstract Window Toolkit - java.awt.*

Die folgende Übersicht hat keinen Anspruch auf Vollständigkeit, bietet aber einen Einstieg in die Oberflächenprogrammierung mit Objekten, die durch java.awt.* zur Verfügung gestellt werden.

Objekte

Panel teilt die Appletoberfläche in verschiedene Bereiche (Ordnungshilfe)Panel bereich = new Panel();
Button ermöglicht InteraktionButton knopf = new Button("Drück mich");
Label ermöglicht die TextausgabeLabel text = new Label("Nachricht");
Textfield ermöglicht die TexteingabeTextfield eingabe = new Textfield("Vorgabetext", laenge);

Damit die Objekte auf der Oberfläche angeordnet werden, muss der jeweilige Bereich, in dem die Objekte dargestellt werden, ein bestimmtes Layout haben. Wird nichts angegeben, weist Java dem entsprechenden Bereich ein FlowLayout zu - alles wird der Reihe nach angeordnet.

Etwas mehr Einfluss auf die Anordnung hat man mit dem BorderLayout oder dem GridLayout.

BorderLayoutnew BorderLayout()
GridLayoutnew GridLayout(anzahlZeilen, anzahlSpalten, abstandZeilen, abstandSpalten)

Beim BorderLayout gibt man an, in welchem Abschnitt des Bereichs ein Objekt platziert werden soll - oben (North), unten (South), links (West), rechts (East) oder in der Mitte (Center).

North
West Center East
South

Beim GridLayout wird das vorgegebene Raster automatisch zeilenweise gefüllt.

Methoden

addadd(bereich);Das Objekt bereich wird auf dem Applethintergrund eingefügt.
bereich.add(element);Das Objekt element soll im Abschnitt bereich dargestellt werden.
bereich.add("South", element);Das Objekt element soll am unteren Ende des Abschnitts bereich dargestellt werden.1)
element.addActionListener(this);Das Objekt element wird mit Methoden in derselben Klasse verknüpft, die auf Aktionen, z.B. das Drücken eines Knopfes, reagieren.
setLayoutbereich.setLayout(new GridLayout(7,7,1,1));Das Objekt bereich wird in 7 Zeilen und 7 Spalten mit jeweils 1 px Abstand unterteilt.
bereich.setLayout(new BorderLayout());
setBackground( farbe ) setzt die Hintergrundfarbe eines Objekts
setForeground( farbe ) setzt die Vordergrundfarbe (= Schriftfarbe) eines Objekts
setText("text") ermöglicht die Veränderung des Textes eines Objekts vom Typ Label
getText() liefert den aktuellen Text eines Objekts vom Typ Label

Mit text.setText(text.getText() + "neuer Text"); kann mal also an vorhandenen Text neuen Text anfügen.

Pakete

Canvas stellt eine Zeichenfläche zur Verfügung
Graphics stellt Zeichenelemente zur Verfügung (Figuren, Zeichenstift)
event stellt Methoden zur Verfügung, mit denen Tastatur- und Mausbefehle abgefragt werden können

Grafikbefehle

Linie
stift.drawLine(int x1, int y1, int x2, int y2)

Startpunkt : x1,y1 Endpunkt : x2,y2

Rechteck
stift.drawRect(int x, int y, int width, int height)

stift.fillRect(int x, int y, int width, int height)
Oval - Kreis
stift.drawOval(int x, int y, int width, int height)

stift.fillOval(int x, int y, int width, int height)
Oval - Kreis mit Winkel
stift.drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)

stift.fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)
Farben
stift.setColor(farbe);

stift.setColor(new Color(255,0,127));

Schülerbeitrag 2007/08 - Quelle : http://www.u-helmich.de/inf/BlueJ/exkurse/applet1/befehle.html

1)
Funktioniert natürlich nur, wenn bereich ein BorderLayout zugewiesen wurde.
schule/if/ef/grafik.txt · Zuletzt geändert: 2018/05/31 17:31 von 127.0.0.1
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0