Swing Methode in einem Fenster aus einem anderen Fenster aufrufen

Mr. J

Mitglied
Hallo,
ich habe folgendes Problem: ich habe ein Programm das in 2 separate JFrames unterteilt ist. Nun erzeuge ich in dem einen JFrame1 ein Objekt und möchte nun eine Methode im JFrame2 (bzw. einer Unterkomponente) aufrufen und dieses Objekt als Parameter übergeben.

Das Problem ist dass er die Methode im JFrame1 nicht aufrufe kann und mir ein 'cannot be resolved' mitteilt.

Meine Frage wäre jetzt was genau ich da falsch mache.

MfG
Mr. J
 
wie Methoden von Objekten aufgerufen werden lernt man in Kapitel 1 Monate bevor man je von JFrame hört..
objekt.methode();

dafür muss man das andere Objekt kennen,
wenn man es selber nicht erzeugt hat, dann hat man es hoffentlich im Konstruktor mitbekommen
oder kann einen Dritten fragen oder ähnliches

Java:
main {
  Object a = ..;
  Object b = ..;

  b.setA(a); // b merkt sich a, um später etwas aufzurufen

  b.setMain(this); // b merkt sich eine wichtige dritte Stelle, fragt dort später getA() ab
}
 
Ja, wie ich Methoden aufrufe weis ich, da liegt nicht mein Problem. Ich versuche es nochmal zu schildern.
Ich habe 2 Fenster: JFrame1 und JFrame2
In JFrame1 gibt es ein JPanel1 und ein ErzeugerObjekt. Dieses ErzeugerObjekt erzeugt Objekt2. Nun möchte ich in JFrame2 in dem JPanel2 liegt eine Methode aus JPanel2 aufrufen und Objekt2 als Parameter übergeben.
Muss ich jetzt jedem Frame/Panel/Methode sagen wer seine Erzeuger sind um das Objekt2 übergeben zu können? Ich steh irgendwie grad auf dem Schlauch ???:L

MfG
Mr. J
 
bei JFrame ist es wie bei ArrayList, String, Atomkraftwerk- oder Mondraketen-Programm
das Grundprinzip ist überall gleich, Objekte werden als Parameter übergeben, ansonsten sind sie nicht bekannt

vereinfacht kannst du dir statische Variablen anlegen, von jeder Fensterklasse hast du doch sicher maximal ein Objekt
 

Zurück
Oben