GUI,MVC und Oberservable.Wie implementiere ich es am besten?

Status
Nicht offen für weitere Antworten.

Kaffeebohne

Bekanntes Mitglied
Ich habe eine Klasse mit der GUI. Dadurch das man hier (in der Gui) Einstellungen für den Programmablauf machen kann dachte ich an eine Observerable-Vererbung.

Das Problem hierbei ist, dass die GUI schon von JFrame erbt. Dadurch fällt das Oberservable flach.

Die Einstellungslogik ist einer einer Klasse Setup gekapselt, in der die Einstellungen als Properties sind und verschiedene Methoden um das Setup zuspeichern, laden usw...

Deshalb dachte ich jetzt an eine Referenz von Setup in der GUI.

Das gefällt mir aber persöhnlich nicht sehr gut, da das MVC hierbei nicht zum Tragen kommt.

Gibt es denn irgendeine andere Möglichkeit hierfür?
 

ronny

Bekanntes Mitglied
Hallo!
Die Klasse Observable ist für das model gedacht! Nicht für die GUI Elemente!
Dein model sollte also von Observable erben.

Deine Views (also die Observer) implementieren das Interface Observer.

mit addObserver teilst du dann dem model mit, welche view als observer am
model hängt.
 

ronny

Bekanntes Mitglied
da fällt mir noch ein... Nur die View kennt das model.
Das kannst du ja im Konstruktor mitgeben und dann
die view als sich selbst als observer dem model hinzufügen.

Im model darf es auf keinen fall irgendwelche referenzen
auf die GUI-Elemente geben.

Dafür hast du dann die möglichkeit mit "setChanged()"
und notifyObservers(obj...); die Observer (sprich: deine views)
zu benachrichtigen und infos mitzugeben.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben