Arbeitsblatt 5neu

Werbung
Arbeitsblatt 5 – EAD II Klassen und Objekte
Graphische Oberfläche für Uhrenanzeige
Für eine graphische Oberfläche müssen Fenster erzeugt werden, Elemente in den Container
des Fensters eingefügt werden, eventuell die Größe und andere Eigenschaften der Elemente
festgelegt und das oder die Fenster sichtbar gemacht werden.
Aufgabe 1
Erstellen Sie eine Klasse, die von JFrame abgeleitet wird. Fügen Sie dieser Klasse ein Label
hinzu mit dem Text „Hallo Welt!“ und stellen Sie das Fenster dar.
Aufgabe 2
Stellen Sie die Größe und Hintergrundfarbe des Fensters ein und zeigen Sie es an.
Aufgabe 3
Deklarieren Sie eine Instanzvariable für eine Uhrenanzeige und lassen Sie die Uhrzeit in
Ihrem Fenster darstellen.
Aufgabe 4
Fügen Sie einen Button zu Ihrem Fenster hinzu. Beachten Sie, dass Sie nun auch einen
Layoutmanager angeben müssen!
Aufgabe 5
Fügen Sie einen ActionListener für den Button hinzu, sodass bei Klick auf den Button die
Methode taktsignalGeben() der Uhrenanzeige aufgerufen und die Uhrzeit aktualisiert
wird.
Aufgabe 6
Fügen Sie einen weiteren Button zu Ihrem hinzu, mit dem Sie die Stunden getrennt von den
Minuten erhöhen können. Erstellen Sie dazu die passende Methode erhoeheStunde() in
der Klasse Uhrenanzeige.
Rufen Sie diese dann im ActionListener des zweiten Buttons aufrufen (Klasse GUI).
Bedenken Sie, dass Sie eventuell den Layoutmanager anpassen müssen.
Zusatzaufgabe
Wenn Sie die Uhr auf eine beliebige Uhrzeit einstellen wollen wäre es hilfreich, die Stunden
und Minuten auch verringern zu können. Fügen Sie die Komponenten hinzu und erweitern Sie
die GUI, so dass dies einfach möglich ist.
import javax.swing.*;
import java.awt.*;
/**
* Graphische Oberfläche für Uhr, abgeleitet von JFrame
*
* @author Rita
* @version 02.05.2014
*/
public class GUI extends JFrame
{
private JLabel zeitanzeige;
private Uhrenanzeige meineUhr;
private Container inhalt;
/**
* Konstruktor für Objekte der Klasse GUI
*/
public GUI()
{
zeitanzeige = new JLabel();
meineUhr = new Uhrenanzeige();
inhalt = new Container();
inhalt = getContentPane();
inhalt.setLayout(new GridLayout(2,2));
setSize(100,100);
Color farbe = new Color(120, 200, 0);
inhalt.setBackground(farbe);
inhalt.add(zeitanzeige);
zeitanzeige.setText(meineUhr.getZeitanzeige());
setVisible(true);
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
/**
* Graphische Oberfläche für Uhr, abgeleitet von JFrame
*
* @author Rita
* @version 02.05.2013
*/
public class GUI extends JFrame
{
private JLabel zeitanzeige;
private Uhrenanzeige meineUhr;
private Container inhalt;
private JButton button1;
/**
* Konstruktor für Objekte der Klasse GUI
*/
public GUI()
{
zeitanzeige = new JLabel();
meineUhr = new Uhrenanzeige();
inhalt = new Container();
button1 = new JButton("Taktsignal");
button1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
meineUhr.taktsignalGeben();
zeitanzeige.setText(meineUhr.getZeitanzeige());
}
}
);
inhalt = getContentPane();
inhalt.setLayout(new GridLayout(2,2));
setSize(100,100);
Color farbe = new Color(120, 200, 0);
inhalt.setBackground(farbe);
inhalt.add(zeitanzeige);
inhalt.add(button1);
zeitanzeige.setText(meineUhr.getZeitanzeige());
}
}
setVisible(true);
Herunterladen