Variablenbeeinflussung von Datei zu Datei

Anleitungen usw. rund um Java, Tutorials halt.

Moderator: wegus

Thomas67
Beiträge: 57
Registriert: 12.09.2010, 19:17

Variablenbeeinflussung von Datei zu Datei

Beitragvon Thomas67 » 19.10.2010, 14:52

Servus!

Habe nun ewig mit protected und sogar sträflicherweise mit public rumgespielt, aber ich steh aufm Schlauch

Ich habe eine Java Desktop Application, nennen wir sie Project1
Enthalten sind im Package Project1 die Java-Files
Project1AboutBox.java
Project1App.java
ProjectView.java (alle drei per Standard)
und eine zusätzliche eigene Class TestClass in der separaten Datei TestClass.java (ebenfalls package Project1)

TestClass hat der Einfachheit nur eine einzige Variable String „Test“ mit zwei public Methoden, die diesen String ändern bzw zurückgeben

Project1View zeigt nur einen jLabel an.
Project1View verfügt ausserdem über eine protected (aber auch schon public versucht) Variable A des Typs TestClass, also A Instanz von TestClass
(A.test wird als Text im JLabel angezeigt)

In einem Dialogfenster soll der String der Variable A geändert werden (entweder direkt A.test oder halt mit der public A.setTest(„xy“)).

Ich hab dies (für dieses Beispiel) mit dem ActionEvent des Close-Buttons der ProjectAboutBox versucht (nur, um keinen eigenen Knpof aufzusetzen)
(AboutBox nur hier im Beispiel der Kürze wegen, habs auch schon über eigenen JDialog versucht)
Nun gelingts mir allerdings einfach nicht, von Project1AboutBox auf die Variable A des Project1View zuzugreifen.

Ich dachte, protected und public Variablen sind im Package sichtbar?

Wie schaff ich das, daß ich im gleichen Package von einem Dialog auf Variablen und Funktionen einer anderen Klasse – hier View -, die aber in einer anderen Datei gespeichert sind, zugreifen kann?

Natürlich könnte ich die Variable „A“ der Aboutbox im Konstruktor mit übergeben, dann klappts, aber das klingt für mich nicht nach der Standardlösung…

Sorry, da kommt der Newbie durch…

Thomas

hobbybastler
Beiträge: 96
Registriert: 10.07.2007, 11:12

Re: Variablenbeeinflussung von Datei zu Datei

Beitragvon hobbybastler » 25.10.2010, 13:28

Hallo
ich bin mir nich 100% sicher was bei dir schieflaeuft, aber ich vermute mal es ist folgendes:
Es reicht nicht aus, die Methoden/Variablen als public zu definieren. Irgendwie muessen die Objekte sich gegenseitig kennen...
Also um von der project1AboutBox auf die Variable A des project1View (ich meine hier Objekte nicht die Klassen !, deswegen klein geschrieben) zuzugreifen, muss du der project1AboutBox eine Referenz auf das project1View mitgeben (zb im Konstruktor).

Nur wenn eine Klasse statisch ist reicht es aus eine Methode/Variable als public zu deklarieren, um ohne Objektreferenz darauf zugreifen zu koennen (was in deinem Fall aber bestimmt keine sinnvolle Loesung ist).

mfg

Thomas67
Beiträge: 57
Registriert: 12.09.2010, 19:17

Re: Variablenbeeinflussung von Datei zu Datei

Beitragvon Thomas67 » 25.10.2010, 18:35

Dank

kann ich mit der oft als parent deklarierten Componente auf die Variablen der parent - Comp zugreifen?


Mein konkretes Problem is, daß ich für den aktuellen View eine Einstellungsbox, ähnlich der guten alten Windows Optionen-Tools-Extras usw. machne Sachen abspeichern will. Z.B. Angaben, Werte, die grad im Hauptview dargestellt werden.
Hab das bisher als modal

Noch besseres Beispiel: Firefox als Hauptview. Dialog-Box = Extras-Einstellungen und ich will die aktuell angezeigte Internetpage als Standardseite anzeigen. Natürlich geht das via Konstruktor, aber ich dacht, vielleicht geht auch n direkter Zugriff von Dialogbox auf die zugrundeliegende Componente.

Bisserl wirr, sorry
Thomas


Zurück zu „Java - Tutorials“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast