]> git.llucax.com Git - z.facultad/75.62/c2tp1.git/blob - src/FrGraf.java
MVC en 4.3
[z.facultad/75.62/c2tp1.git] / src / FrGraf.java
1
2 import java.awt.*;
3 import java.awt.event.*;
4 import java.util.*;
5
6 public class FrGraf extends Frame implements Observer
7 {
8         private Panel panel;
9         private Button boton;
10         private Label label;
11         private Fraccion fraccion;
12
13         public FrGraf (Fraccion f)
14         {
15                 fraccion = f;
16
17                 panel = new Panel ();
18                 label = new Label(f.toString (), Label.CENTER);
19                 boton = new Button ("Mitad!");
20
21                 panel.setLayout (new BorderLayout ());
22                 panel.add (label, BorderLayout.CENTER);
23                 panel.add (boton, BorderLayout.SOUTH);
24         
25                 add (panel, BorderLayout.CENTER );
26                 setSize (500, 300);
27                 setVisible (true);
28                         
29                 f.addObserver (this);
30         }
31
32         public boolean action (Event evt, Object obj) {
33                 if (evt.target.equals(boton)) {
34                         fraccion.setDen ( fraccion.getDen()*2);
35                 }
36
37                 return true;
38         }
39
40         public void update(Observable obs, Object obj)
41         {
42                 if (obs instanceof Fraccion) {
43                         label.setText (obs.toString ());
44                 } else {
45                         label.setText ("E");
46                 }
47         }
48
49         static public void main (String[] args) {
50                 Fraccion modelo = null;
51                 try {
52                         modelo = new Fraccion (5, 4);
53                 }
54                 catch (Exception e) {
55                 }
56
57                 FrGraf vista = new FrGraf (modelo);
58         }
59 }