G
Guest
Gast
Hi, ich bin gerade dabei eine größere Anwendung zu bauen, hab aber gerad ein glaube ich banales Problem, hinter das
ich nicht steige:
Ich benutze das MVC Pattern und erzeuge im Model ein Set<Interface>
Interface:
Zuden habe ich im Model noch folgende Methoden
Im Controller stehen folgende Methoden um Listener hinzuzufügen
Das GUI implementet das Interface und benutzt im Standartkonstruktor die addListenerToModel methode aus Controller
Jetzt habe ich das Problem das im Set im Model kein einziges Interface hinzugefügt wird, trotz dessen ich dies im GUI getan habe.
Kann mir jemand helfen? Hab das Gefühl es ist ein Schusselfehler, da ich das in etlichen kleineren Programmen schon verwendet habe...
Danke
ich nicht steige:
Ich benutze das MVC Pattern und erzeuge im Model ein Set<Interface>
Code:
...
...
private Set<Interface> listeners;
...
..
...
Interface:
Code:
package GUI;
import java.util.EventListener;
public interface Interface extends EventListener{
public void setCalender(int start, int end, int kalwoche);
}
Zuden habe ich im Model noch folgende Methoden
Code:
public void informListeners(int jahr, int monat, int kalwoche){
System.out.println(listeners.size()); // --> Testweise, gibt immer 0 aus
for(Interface o : this.listeners){
o.setCalender(jahr, monat, kalwoche);
}
}
public void addListener(Interface t){
listeners.add(t);
}
Im Controller stehen folgende Methoden um Listener hinzuzufügen
Code:
....
public void addListenerToModel(Interface l){
kalender.addListener(l); //kalender ist ein Modelobjekt
}
....
Das GUI implementet das Interface und benutzt im Standartkonstruktor die addListenerToModel methode aus Controller
Code:
public class GUI extends javax.swing.JFrame implements Interface {
terminprojekt.Controller cont;
public GUI(terminprojekt.Controller c) {
cont = c;
[color=red]cont.addListenerToModel(this);[/color]
this.setVisible(true);
initComponents();
}
Jetzt habe ich das Problem das im Set im Model kein einziges Interface hinzugefügt wird, trotz dessen ich dies im GUI getan habe.
Kann mir jemand helfen? Hab das Gefühl es ist ein Schusselfehler, da ich das in etlichen kleineren Programmen schon verwendet habe...
Danke