carookee - group communication for you
Home / JavaForum / Java allgemein
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
5.378 User online
0 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 72 von 2212 (3%) |<   <   >   >|

Autor Gast
Datum 18.04.02, 20:25
Betreff Auf Ereignis eines anderen Objekts zugreifen


Hallo,

ich habe ein allgemeines Problem bei der (Java-)Klassen-Programmierung, dass mich jetzt schon länger beschäftigt und dass ich bisher nicht zu lösen imstande war.
Es wäre schön, wenn sich einer die Zeit nehmen würde, zu verstehen, worum es geht oder mir einen Lösungsansatz bzw. Link nennen könnte, in dem das Thema behandelt wird!

* Es geht darum, auf ein erzeugtes Objekt zuzugreifen. *


Konkretes Beispiel : Ich habe ein Spielfeld-Klasse erzeugt, in dem man TicTacTo spielen kann ( nein, nicht die Pop-Gruppe, sondern das Spiel mit den 3 Spalten und Reihen, in dem man versuchen muss, 3 Kreuze bzw. Kreise in einer Spalte/Reihe/Diagonale zu setzen ).
Diese Klasse hat auch die Ereignisbehandlung für das Spiel

Eine andere Klasse ( Ausgabe ), abgeleitet von (J)Panel, implementiert dieses Spielfeld. Es besitzt einen Button "Neues Spiel", dass alle Werte des Spiels auf den Anfangszustand zurücksetzt und - genau das ist das Problem - ein AUSGABEFELD, in dem eine Nachricht erscheinen soll, wenn man selber oder der Computer gewonnen hat.

Also:
Klasse Spiel : Feld mit 3 x 3 Feldern, Ereignisbehandlung
Klasse Ausgabe : Implementiert Spiel, besitzt Zurücksetzenfunktion( "Neues Spiel" ) und ein AUSGABEFELD.

Die Methode zur Ausgabe soll in der SPIEL-KLASSE vorhanden sein, ungefähr so:

public String setText()
{
String msg;
if( Spieler[0].gewonnen == true ) // Computer hat mal wieder gewonnen
{
msg = "Ich hab gewonnen!!! :)";
}
if( Spieler[1].gewonnen == true ) // Der Mensch vorm PC hat ausnahmsweise Glück
{
msg = "Hey gut! Du hast gewonnen";
}
return msg;
}


Die Details der Methode setText sind nicht so wichtig, es geht einfach darum, dass die Klasse Spiel eine Methode hat, die einen Text erzeugen kann.

Nur, wie greife ich von der Klasse Ausgabe auf das Spielfeld zu, wenn einer gewonnen hat ???

Beim Button "Neues Spiel" ist das einfach, _ICH_ klicke den Knopp, und alle Werte des Spielfelds werden zurückgesetzt.

Bei der "gewonnen" - Ausgabe ist das aber anders. Das Spielfeld ruft die Methode setText auf, wenn gewonnen worden ist, aber wie kommt die Nachricht an die andere Klasse, also in ein Label/Textfeld o.ä., welches die Klasse Spielfeld implementiert ???



Wie geagt, es ist ein allgemeines Problem und das eben geschreibene ist nur ein konkretes Beispiel.
Ich hoffe, es ist nicht zu wirr formuliert. Mir ist das Problem wichtig und Suchen hat mir bisher auch nicht auf die Sprünge geholfen. Falls jemand interessiert ist und es nicht so richtig verstanden hat, probier ich es noch mal zu erklären!


Diskussionsverlauf:
                Ach sooooo :)
Auf Ereignis eines anderen Objekts zugreifen
    Re: Auf Ereignis eines anderen Objekts zugreifen
        Re: Auf Ereignis eines anderen Objekts zugreifen
            Re: Auf Ereignis eines anderen Objekts zugreifen

 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com