kramann.info
© Guido Kramann

Login: Passwort:










13 Übung zum Layout-Projekt

Aufgabe 1

  • Analysieren und testen Sie folgendes Programm mit Hilfe der Java-API.
  • In ein Fenster wird hier eine Scrollfläche eingefügt (ScrollPane) und in diese ein editierbarer Textbereich.
  • Die Operation beim Schließen wird hier explizit programmiert (WindowListener), da Frame statt JFrame benutzt wird.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Rasterlayout
{
    public ScrollPane scrollpane;

    public Rasterlayout()
    {
        Frame fenster = new Frame("Rasterlayout");
        fenster.setBounds(100,200,500,400);
        fenster.addWindowListener(new FensterSchliesser(fenster));
        scrollpane = new ScrollPane(ScrollPane.SCROLLBARS_AS_NEEDED);
        scrollpane.setBackground(Color.WHITE);

        TextArea textfeld = new TextArea("huhu",80,100);
        textfeld.setEditable(true);
        scrollpane.add(textfeld);

        fenster.add(scrollpane);
        fenster.setVisible(true);
    }

    public static void main(String[] args)
    {
          Rasterlayout rasterlayout = new Rasterlayout();
    }


    private class FensterSchliesser implements WindowListener
    {
        private Frame fenster;

        public FensterSchliesser(Frame fenster)
        {
            this.fenster = fenster;
        }

        public void windowActivated(WindowEvent e) {}
        public void windowClosed(WindowEvent e) {}
        public void windowClosing(WindowEvent e) 
        {
            fenster.dispose();
            System.exit(0);
        }
        public void windowDeactivated(WindowEvent e) {}
        public void windowDeiconified(WindowEvent e) {}
        public void windowIconified(WindowEvent e) {}
        public void windowOpened(WindowEvent e) {}
       
    }

}

Code 13-1: Quellcode der Klasse Rasterlayout.

Aufgabe 2

  • Die Klasse Canvas bietet die Möglichkeit, grafische Elemente in eine Java-Applikation einzufügen, ähnlich wie bei Applet.
  • Analysieren Sie zunächst das besprochene Applet-Grafikbeispiel (paint-Methode in MeinApplet, Kapitel 9.2).
  • Versuchen Sie dann mit Hilfe der Java-API die Klasse TextArea durch Canvas zu ersetzen und lassen Sie testweise eine kleine Grafik darin zeichnen.

Aufgabe 3

  • Für die Umsetzung eines Layout-Programms sollen Kupferdreierketten dargestellt werden (vergl. Mikroprozessoranwendungen, Kapitel 3 unten).
  • Erweitern Sie das bisherige nun so, dass es ein Raster wie in Bild 3-2 in Mikroprozessoranwendungen, Kapitel 3 darstellen kann.
  • Über einen neuen Konstruktor soll die Anzahl der Rasterungen vorgebbar sein.
  • Statt der Rasterpunkte soll über einen weiteren Konstruktor die Platinengröße in Millimetern vorgebbar sein.