Einrichten der ersten arbeitsfähigen Version
This commit is contained in:
63
View.java
Normal file
63
View.java
Normal file
@@ -0,0 +1,63 @@
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
public class View implements Observer {
|
||||
Kontrolleur kontrolleur;
|
||||
Zufallszahlengenerator zufallszahlengenerator;
|
||||
JFrame fenster;
|
||||
JButton generierKnopf;
|
||||
JTextField eingabeFeld;
|
||||
JLabel ausgabeFeld;
|
||||
|
||||
public View() {
|
||||
fenster = new JFrame("Zufallswahl");
|
||||
fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
fenster.setSize(480,240);
|
||||
|
||||
eingabeFeld = new JTextField();
|
||||
generierKnopf = new JButton("Generiere Zufallszahl");
|
||||
ausgabeFeld = new JLabel("Willkommen beim Zufallszahlengenerator!");
|
||||
|
||||
registriereListener();
|
||||
|
||||
Container oberfläche = fenster.getContentPane();
|
||||
oberfläche.add(eingabeFeld, BorderLayout.NORTH);
|
||||
oberfläche.add(generierKnopf, BorderLayout.CENTER);
|
||||
oberfläche.add(ausgabeFeld, BorderLayout.SOUTH);
|
||||
|
||||
fenster.setVisible(true);
|
||||
}
|
||||
|
||||
public void setKontrolleur(Kontrolleur k) {
|
||||
this.kontrolleur = k;
|
||||
}
|
||||
|
||||
public void setZufallszahlengenerator(Zufallszahlengenerator z) {
|
||||
this.zufallszahlengenerator = z;
|
||||
}
|
||||
|
||||
private void registriereListener() {
|
||||
this.generierKnopf.addActionListener(new ActionListener() {
|
||||
@Override
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
if (kontrolleur.setObergrenze(eingabeFeld.getText())) {
|
||||
kontrolleur.weiseAnZufallszahl();
|
||||
} else {
|
||||
ausgabeFeld.setText("Gib eine ganze Zahl an!");
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update() {
|
||||
StringBuilder ausgabeText = new StringBuilder();
|
||||
ausgabeText.append("Zufallszahl: ");
|
||||
ausgabeText.append(this.zufallszahlengenerator.getZufallszahl());
|
||||
ausgabeText.append(" | Obergrenze: ");
|
||||
ausgabeText.append(this.zufallszahlengenerator.getObergrenze());
|
||||
this.ausgabeFeld.setText(ausgabeText.toString());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user