![]() |
| | Themen-Optionen |
| | Nach oben #1 |
| Neuer Benutzer Registriert seit: 16.08.2007 Ort: Dresden
Beiträge: 5
|
Hallo, ich habe ein Hauptfenster, was die grafische Grundlage darsstellt. Es ist vom Typ JFrame. Dieses Hauptfenster enthält eine nicht-grafische Klasse Projekt, welche für die komplette Projektverwaltung zuständig ist, sprich erstellen, öffnen, Projektpfad anlegen, div. Dateien ausgeben. Eine Methode öffnet einen JDialog zu Abfragezwecken. Der Dialog bietet die Möglichkeit eine Protokolleintrag zu tätigen. Die Methode für für den Eintrag liegt aber in der Projekt.class. Meine Frage ist jetzt, wie kann ich vom Dialog die Methode aufrufen? Eine Möglichkeit wäre einen Dialogkonstruktor zu schreiben, in dem sich das Projektobjekt selbst mit übergibt und im Dialog somit dessen Funktion aufrufbar ist. Nur ist das sinnvoll bzw. ist das "sauber" programmiert? Oder besteht irgendwie die Möglichkeit, das ein Objekt auf seinen "Erzeuger" zurückgreifen kann. Danke schon mal |
| | |
| | Nach oben #3 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.471
|
Ganz generell dürfte dir das hier weiterhelfen: http://java.sun.com/docs/books/tutorial/ui/index.html |
| | |
| | Nach oben #4 |
| Neuer Benutzer Registriert seit: 16.08.2007 Ort: Dresden
Beiträge: 5
|
Also ich komm nicht wirklich mit. Die Swingklasse bietet mir EventListener an. Die Struktur des Programm sieht aber jetzt so aus, das ein Projekt-Objekt ein Messdaten-Objekt besitz. Dieses ruft den Dialog auf, welcher dann auf eine Methode im Projektobjket zugreifen soll. Warum? weil in dem Projekt-Objekt der Pfad zur Abspeicherung mit angegen ist. Jetzt möchte ich aber auch nicht einen Eventlistener soweit auslagern, weil dann meiner Meinung nach die Übersichtlichekit verloren geht. Und mit den Observerlat muss ich ihn jedes mal als Parameter vom Projekt bis Dialog mit übergeben, was für micht nicht soviel sinn macht, weil ich da auch gleich das Projekt-Objekt bis zum Dialog mitübergeben kann, da ich im Dialog keinen das Projekt nicht als Observer hinzufügen kann, weil es ja unbekannt ist. In den meisten Beispielen werden die Observer und Observerlat immer gleichzeitig erstellt, und dann ist es auch recht einfach die Observer zu add'en. Entweder stell ich mich zu blöd an oder ich hab echt keinen Durchblick mehr. Ich muss dazusagen, das ich kein gelernter Programmierer bin, nur gern etwas Struktur darin haben möchte und nicht dauernd ein Kreuz und quer gelinke. Gruss Thomas |
| | |
| | Nach oben #6 |
| Neuer Benutzer Registriert seit: 16.08.2007 Ort: Dresden
Beiträge: 5
|
ok, sorry. Ich würde gern wissen wie ich die Objekte strukturien sollte bzw. wie ich den Observerlat anlegen müsste damit man auf ihn von überall zugreifen kann bzw. ob das überhaupt möglich ist? Die Frage die sich mir jetzt in dem selben Zusammenhang stellt ist wie kann ich bzw. wie muss ich Daten zentral ablegen, damit verschieden Objekte auf sie zugreifen können wie zum Beispiel Programmeinstellungen. Wie gesagt eine Möglichkeit wäre, das ich jedem Objekt was ich erzeuge die nötigen Werte mitgebe, nur scheint mir das etwas doof. Oder sollte man einfach ein Objekt am Anfang erstellen, was man jedem weiteren Objekt mitgibt, damit es sich aus ihm die passenden Werte selbst herausnimmt? In dem Zusammenhang habe ich gerade Schnittstellen überflogen. Könnte ich mit denen eine Zentrale Datenhaltung realisieren, weil sie ja eigentlich nur zur mehrfachvererbung gedacht sind. Wenn ja, wie würde der Ansatz dafür aussehn? Geändert von spag (17.08.2007 um 17:32 Uhr). |
| | |
| | Nach oben #7 |
| Projektleiter Registriert seit: 30.11.2005 Ort: Bottrop
Beiträge: 1.108
|
Meine Güte. Programmieren mit Java ist unglaublich toll. Wenn jemand fragen hat, kann man ihn mit Stichworten erschlagen und er kann sich das dann selbst raussuchen, einfach toll. Die Lösung deines Problems nennt sich Singleton. |
| | |
| | Nach oben #8 |
| Neuer Benutzer Registriert seit: 16.08.2007 Ort: Dresden
Beiträge: 5
|
Danke für die Antwort. Wert ich mir mal ansehen, weil es auf den ersten Blick so etwa in die Richtung tendiert, die ich mir dachte. Habe es aber im Moment einfach so gemacht, das ich einfach das Projekt immer als Referenz an jedes erzeugte Objekt mitgebe. Geht jetzt erstmal. Muss auch bald fertig werden, desswegen erstmal so. Danke euch allen. |
| | |
| | Nach oben #9 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.471
|
Ich mag trotzdem noch einen Standardlink hinterherschieben: http://de.wikipedia.org/wiki/Singleton_(Entwurfsmuster) |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
| |