Trennung View und Control

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo...

Ich habe seit langem mal wieder mit GUI's gearbeitet und wollte dieses Mal schön den View von der Control trennen - habe aber nun folgendes Problem:

In meiner Mainmethode erzeuge ich sowohl Eventhandler (PostOffice) als auch meinen Hauptdialog
Code:
PostOffice ps = new PostOffice();
Singleton config;
JFrame frame = new JFrame();
NewJDialogMain inst = new NewJDialogMain(frame, ps);


Mein Hauptdialog selbst besteht nun aus diversen PanelObjekten, denen ich den Handler übergebe
Code:
jPanelTS2 = new NewJPanelInternal(ps);

Ich kann nun zwar auf die Events reagieren - auf die jeweiligen Button der jeweiligen Panels komme ich jedoch nicht zurück...
Sagen wir, ein Event wird von einer Checkbox geschmissen - ich kann zwar auf dieses reagieren, aber ich komme nicht auf meine Pane zurück - kann also z.B. nicht graphisch auf meine Checkbox reagieren (z.B. Textfeld einblenden).

Ich kann doch nicht in meinem Eventhandler zig Konstruktoren schreiben, die das jeweilige Panel/ Frame/ Dialog was auch immer entgegen nehmen... Und mit GetSource komm ich auch nicht auf die Pane zurück, auf der sich die Checkbox befindet.

Wie mache ich das???

Gruß

Nico
 
G

Gast

Gast
Model View Controller;

Das woran ich mich orientiere ist folgendes:

1. Model erstellen
2. View bekommt Model
3. Controller bekommt View , *

* kann noch das Model bekommen, dann benötigt Schritt 2, die View das Model nicht mehr
 
G

Guest

Gast
Anonymous hat gesagt.:
Ich kann doch nicht in meinem Eventhandler zig Konstruktoren schreiben, die das jeweilige Panel/ Frame/ Dialog was auch immer entgegen nehmen... Und mit GetSource komm ich auch nicht auf die Pane zurück, auf der sich die Checkbox befindet.

Wie mache ich das???

Du schreibst i.d.R. mehrere Eventhandler. Alle Events aller Frames in einer Klasse abzuhandeln kann sehr unübersichtlich werden. Falls du mehrere Frames oder Dialoge an einen Eventhandler binden möchtest, sollten diese ein Interface implementieren, welches dann im Konstruktor des Eventhandler übergeben wird.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben