Methoden Methode der GUI-Klasse Zugriff auf Methoden der Hauptklasse

Reggie()

Bekanntes Mitglied
Ich sitze im Zug und stehe grad voll auf dem Schlauch und komme nicht weiter.
Ich habe ein Programm mit 2 Klassen. Klasse 1 enthält alle Programmlogik-Methoden und die main-Methode.
Klasse 2 erschafft und verwaltet die GUI und die Darstellung. Es gibt dort auch nur 2 Buttons. Nun mein Problem: Die ActionPerformed-Methoden sind ja in der GUI-Klasse (dessen Object ein Attribut der Hauptklasse ist). Wenn ich dort auf den Button drücke, soll nicht nur die Darstellung gesteuert werden, sondern ich möchte auch Methoden der Klasse1 aufrufen, was aber nicht geht.
Sicher ist das eine dumme Frage, aber ich komme grad nicht weiter... und ihr habt mir schon sooo oft geduldig weitergeholfen :)
 

Reggie()

Bekanntes Mitglied
args, das selbe Problem: wenn ich bei den Buttons den ActionListener adden möchte, dann fehlt mir der Zugriff auf die Hauptklasse.
Warscheinlich habe ich den AL eh falsch/schlecht erstellt. Ich habe nach implements ActionListener die Methode actionPerformed überschrieben. Daher kann ich aus der Methode der GUI-Klasse nicht auf diese Methode der Klasse 1 zugreifen.
Wie ich mehrere AL erstelle (für jeden Button einen eigenen) weiss ich leider nicht (außer natürlich als anonyme innere KLasse)
 

Blender3D

Top Contributor
Dein Konzept ist MV ( Model View ), da ist es unumgänglich, dass beide Klassen voneinander wissen müssen.
Sonst wäre MVC (Model View Controller ) die Lösung die Du vielleicht anstreben möchtest. Controller weis von Model und von View. Aber View und Model sind unabhängig.
Bei der MV Variante könnte man über den Commandstring der Actionperformed Methode den Button erkennen, der gedrückt wurde und das Model entsprechend reagieren lassen.
:)
 

Reggie()

Bekanntes Mitglied
ich nutze einen ActionCommand. ich frage mich halt nur, wie ich den ActionListener adden soll, wenn die actionPerformed-Methode unerreichbar ist.
EDIT: ich könnte natürlich die GUI-Erstellung & Steuerung auch in die Main-Klasse verschieben, aber dann stehen der OOP endgültig die Haare zu Berge...
 
X

Xyz1

Gast
Ich sitze im Zug und stehe grad voll auf dem Schlauch und komme nicht weiter.
Im Zug programmieren ist doch eh ungünstig. Alle schauen einen in der 2. Klasse abfällig wie ein Alien an. :rolleyes: Setz dich lieber später zuhause/daheim nochmal ran. ;)

Klasse 2 musst du eine Referenz des Objekts von Klasse 1 "mitgeben".
 

Blender3D

Top Contributor
und im Konstruktoraufruf new Klasse2(this) ?
Da Klasse1 den ActionListener implementiert.
Klasse1 myModel = ...
Klasse2 myGUI new Klasse1( myModel );
In Klasse2 ist jetzt nur ein ActionListener sichtbar.
Kann man zwar auf Klasse1 casten aber direkt ist der Zugang zum Model verwehrt. Bei wirklicher Trennung brauchst Du eine 3te Klasse. (MVC).
;)
 

Harry Kane

Top Contributor
Ich habe ein Programm mit 2 Klassen. Klasse 1 enthält alle Programmlogik-Methoden und die main-Methode.
Klasse 2 erschafft und verwaltet die GUI und die Darstellung. Es gibt dort auch nur 2 Buttons.
Da Klasse1 den ActionListener implementiert.
Klasse1 myModel = ...
Klasse2 myGUI new Klasse1( myModel );
Wenn Klasse1 eine reine Businesslogik-Klasse ist, und Klasse2 eine Gui-Klasse, gehört die actionPerformed in Klasse2, eventuell auch implementiert in einer anonymen inneren Klasse. Damit in der actionPerformed der Aufruf von Methoden der Logik-Klasse möglich ist, braucht Klasse2 natürlich eine Referenz auf eine Instanz von Klasse1. Eine Business-Logik-Klasse sollte mMn kein AcrtionListener sein, aber ein ActionListener braucht ggf. eine Referenz auf eine Instanz einer Logik-Klasse, um deren Methode aufzurufen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Klassen Zugriff auf ein Objekt einer Klasse aus einer Methode heraus Java Basics - Anfänger-Themen 4
D Zugriff auf Methode einer anderen Klasse Java Basics - Anfänger-Themen 5
G Methoden Zugriff auf Methode.. aus einer anderen Klasse Java Basics - Anfänger-Themen 6
Z Methoden Zugriff mit Klasse 3 auf Methode von Klasse 2 welche in Klasse 1 erzeugt wird Java Basics - Anfänger-Themen 6
U Methoden Zugriff auf Array von weiterer Methode einer Klasse, Rückgabewert Problem Java Basics - Anfänger-Themen 5
C Problem mit Zugriff auf Variable bzw. get-Methode in anderer Klasse Java Basics - Anfänger-Themen 2
S Zugriff auf Methode anderer Klasse Java Basics - Anfänger-Themen 6
L Zugriff auf Methode einer anderen Klasse -> ')' fehlt ? Java Basics - Anfänger-Themen 2
C Unbekannte Methode add bei Klasse die JTree erweitert Java Basics - Anfänger-Themen 14
B Wie kann ich folgende Klasse/Methode per Button ausführen? Java Basics - Anfänger-Themen 1
_user_q Wie eine Methode/Funktion aus einer Klasse mit Constructor aufrufen? Java Basics - Anfänger-Themen 20
B Attribute eines Objekts einer Klasse durch statische Methode einer 2. Klasse ändern? Java Basics - Anfänger-Themen 32
berserkerdq2 Habe eine Klasse, welche public ist, diese hat eine public Methode, die nicht static ist. Wenn ich nun versuche aufzurufen Probleme? Java Basics - Anfänger-Themen 8
H Mit setter-Methode JLabel in einer andern Klasse ändern. Java Basics - Anfänger-Themen 40
U Warum kann ich die Methode in der ENUM Klasse nicht aufrufen? Und warum geht die Switch nicht? Java Basics - Anfänger-Themen 8
D Array in Main Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 3
M Wie kann ich eine Methode aus einem Interface in eine Klasse implementieren, so dass sie ihre Funktion ausführt? Java Basics - Anfänger-Themen 7
M Frage zur Methode split der Klasse String Java Basics - Anfänger-Themen 32
D Einen boolischen Wert aus einer Methode in einer anderen Klasse aufrufen? Java Basics - Anfänger-Themen 11
C Auf die Methode einer anderen Klasse zugreifen Java Basics - Anfänger-Themen 1
M Von einem Menü Methode aus anderer Klasse ausführen, die errechnete Werte in Datei schreibt. Java Basics - Anfänger-Themen 8
T Auf Instanz der selben Klasse aus überschriebener Methode in Methode zugreifen. Java Basics - Anfänger-Themen 2
L Attribute aus Klasse in berechnungs Methode übergeben Java Basics - Anfänger-Themen 1
A Methode in einer anderen Klasse verwenden Java Basics - Anfänger-Themen 1
B Klassen Abstrake Klasse und Template Methode Java Basics - Anfänger-Themen 4
S Auf Methode einer anderen Klasse zugreifen Java Basics - Anfänger-Themen 3
R Methode zwei Sortierkriterien der Klasse Comparator übergeben Java Basics - Anfänger-Themen 4
bensdt Klasse erweitern um eine Methode "void decrement()" Java Basics - Anfänger-Themen 5
S Methode von vererbter Klasse, statt die der "Mutterklasse" aufrufen Java Basics - Anfänger-Themen 28
M Klassen Methode in anderer Klasse aufrufen? Java Basics - Anfänger-Themen 3
M Methode in anderer Klasse aufrufen Java Basics - Anfänger-Themen 5
S Methode in der Klasse erstellen Java Basics - Anfänger-Themen 2
E Methode soll andere Methode der selben Klasse aufrufen Java Basics - Anfänger-Themen 28
B Mit methode Objekt aus anderer Klasse erstellen Java Basics - Anfänger-Themen 6
A OOP Variable in anderer Klasse durch Methode aufrufen und einer anderen Variable gleichsetzen Java Basics - Anfänger-Themen 2
R Methoden NPE beim Aufruf einer Methode einer anderen Klasse Java Basics - Anfänger-Themen 4
R Methode in Singleton Klasse Java Basics - Anfänger-Themen 1
J Erste Schritte drawLine Methode der Graphics Klasse Java Basics - Anfänger-Themen 2
E Threads Methode einer Wartenden Klasse aufrufen Java Basics - Anfänger-Themen 3
P Methode soll Variable einer anderen Klasse ändern. Wie? Java Basics - Anfänger-Themen 1
G Klassen Mit fremder Klasse auf public Methode zugreifen Java Basics - Anfänger-Themen 23
J abstrakte Methode in Klasse mit Rückgabetyp der abgeleiteten Klasse Java Basics - Anfänger-Themen 5
T Methode in Klasse funktioniert nicht Java Basics - Anfänger-Themen 14
C Gui- Klasse erkennt Übergabeparameter aus Methode nicht Java Basics - Anfänger-Themen 4
J Methoden Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 12
L Klassen Methode aus anderer Klasse Java Basics - Anfänger-Themen 13
D Aufruf einer Methode einer anderen Klasse Java Basics - Anfänger-Themen 39
B Wie kann ich eine Methode einer selbst erstellten Klasse statisch importieren? Java Basics - Anfänger-Themen 5
M Klassen Methode aus anderer Klasse nicht aufrufbar Java Basics - Anfänger-Themen 11
shiroX Klassen Klasse/Methode private final jUnit-Fehler Java Basics - Anfänger-Themen 5
M Maven Main-Methode Interface und Klasse Java Basics - Anfänger-Themen 2
P Instanz mit .add Methode von einer Klasse zur anderen? Java Basics - Anfänger-Themen 6
F Methode anderer Klasse aufrufen Java Basics - Anfänger-Themen 1
N Objekt in Methode einer anderen Klasse erzeugen Java Basics - Anfänger-Themen 9
S Methoden Methode einer anderen Klasse aufrufen? Java Basics - Anfänger-Themen 5
P Aufruf Methode anderer Klasse Java Basics - Anfänger-Themen 5
AssELAss Klassen Java Klasse in main-methode ausführen Java Basics - Anfänger-Themen 7
M Klassen Main Methode in einer anderen Klasse aufrufen Java Basics - Anfänger-Themen 13
G Methode einer Abstrakten Klasse aufrufen Java Basics - Anfänger-Themen 1
A Methode aus einer anderen Klasse ausführen Java Basics - Anfänger-Themen 7
H Klasse bzw methode der Klasse in einer anderen Klasse benutzen Java Basics - Anfänger-Themen 4
P OOP Eingabevariablen der Klasse Raum in der Methode addEvent ans Ende einer ArrayList einfügen Java Basics - Anfänger-Themen 3
S Methode außerhalb der Klasse definieren Java Basics - Anfänger-Themen 5
E Methode aus Klasse eins in Klasse zwei verwenden? Java Basics - Anfänger-Themen 2
I Rückgabewert einer Methode in anderer Klasse verwenden Java Basics - Anfänger-Themen 2
B Klasse: Methode Clone Java Basics - Anfänger-Themen 5
O Klasse übergeben und Methode aufrufen Java Basics - Anfänger-Themen 6
M Dynamische Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 11
T [Erledigt] Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 0
A Vererbung Abstrakte Klasse mit Methode die Objekte der Subklassen benutzt? Java Basics - Anfänger-Themen 7
V Arrays aus eigener Klasse erstellt, zuweisung aber spuckt Fehler in verbindung mit main Methode aus. Java Basics - Anfänger-Themen 3
L Erste Schritte Methode aus anderer Klasse verwenden Java Basics - Anfänger-Themen 16
P Methode außerhalb der Klasse aufrufen Java Basics - Anfänger-Themen 10
S Methoden Methode einer anderen Klasse ausführen? Java Basics - Anfänger-Themen 6
M Methode aus einer Klasse aufrufen Java Basics - Anfänger-Themen 6
B Erste Schritte In Klasse B die Methode aus Klasse A in Klasse A ausführen Java Basics - Anfänger-Themen 10
R Compiler-Fehler Klasse A nutzt Objekt von Klasse B, um Methode von Klasse B auszuführen Java Basics - Anfänger-Themen 11
H Programmiertechnik: Methode einer Klasse beim Anlegen überschreibt Java Basics - Anfänger-Themen 3
O Methode in andere Klasse verlegt, "auslesen" einer HTML Seite verschnellert - Problem. Java Basics - Anfänger-Themen 4
M Methode mit beliebigen Parametern in abstrakter Klasse definieren Java Basics - Anfänger-Themen 8
A Arraylist einer Methode, gefüllt einer anderen Klasse übergeben Java Basics - Anfänger-Themen 17
A Mit Methode auf Methode derselben Klasse zugreifen Java Basics - Anfänger-Themen 3
S Aufruf Einer Methode aus einer anderen Klasse - Static Fehler Java Basics - Anfänger-Themen 4
A Methode aus anderer Klasse Java Basics - Anfänger-Themen 5
B Methode in andere Klasse verschieben Java Basics - Anfänger-Themen 9
L Methoden Eine Methode aus einer anderen Klasse aufrufen Java Basics - Anfänger-Themen 4
M Methode einer anderen Klasse aufrufen Java Basics - Anfänger-Themen 7
S Klassen Methode von Klasse lesen Java Basics - Anfänger-Themen 10
D Methoden Methode über andere Klasse aufrufen Java Basics - Anfänger-Themen 7
J Methode vom Typ einer Klasse!? Java Basics - Anfänger-Themen 8
L Objekt.methode(new Klasse().methode()); Java Basics - Anfänger-Themen 7
N Klassen Klasse - Objekt - Methode Java Basics - Anfänger-Themen 6
A paint() methode von externer Klasse aufrufen Java Basics - Anfänger-Themen 3
T Klasse in Main Methode Java Basics - Anfänger-Themen 3
H Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 7
R Auf get-Methode von ArrayList zugreifen von Methode einer Klasse Java Basics - Anfänger-Themen 2
J Klasse Student - Methode immatrikullieren, exmatrikullieren, altersdurchschnitt Java Basics - Anfänger-Themen 15
Corben Methoden Methode einer Abstrakten Klasse Java Basics - Anfänger-Themen 7
L Methoden Auf statische Methode einer anderen Klasse zugreifen, die Array zurückgibt Java Basics - Anfänger-Themen 3
C Objekt X über Methode aus anderer Klasse verändert Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben