JFrame komplett schließen

Henne

Neues Mitglied
Hey Leute,
ich hab ein Problem mit meinem Spiel.
Sobald man das Spiel startet öffnet sich ein JFrame mit den Knöpfen "Spiel starten" und "Spiel beenden".
Beim Klicken auf "Spiel starten" öffnet sich durch
Java:
new Game();
(Game ist die Hauptklasse des Spiels) ein weiteres JFrame in dem dann das eigentliche Spiel stattfindet.
Nun weiß ich aber nicht wie ich diesen JFrame wieder KOMPLETT schließen soll wenn ich auf einen Knopf während des Spiels drücke.Ich hab es schon mit
Java:
this.dispose();
System.gc();
, also dem GarbageCollector versucht.Das Fenster schließt sich zwar,jedoch merke ich das ein Timer dieses Frames weiterläuft, da dieser einen Wert welcher alle 5 Sekunden ausgegeben wird auch nach dem Schließen weiterhin ausgibt.
Ich hoffe dass ich euch mein Problem einigermaßen gut schildern konnte und ihr mir sagen könnt, wie ich beim Klick auf "Spiel starten" ein ganz neues Fenster öffnet welches beim Druck auf den Knopf innerhalb des Spiels auch wieder komplett "gelöscht" wird.
Vielen Dank schon mal im Vorraus:toll:
 
Was meinst du mit "Timer" ? Wenn du da einen Timer drin startest, dann musst du den manuell auch wieder beenden.
Wenn es nur um das Problem geht, dass das Programm weiterläuft:
Java:
frame. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 
Ich glaube ich hab mich nur ein bisschen unklar ausgedrückt🙁.
Es war eigentlich so geplannt:
Ich klicke im Menü-Frame auf den Button zum Öffnen des "Spiel-Frames".
Wenn ich nun in diesem Spiel-Frame auf den Beenden-Knopf drücke soll sich der Spiel-Frame und alle Inhalte,Timer,Variblen etc. schließen/löschen als hätte es diesen Frame nie gegeben und der Menü-Frame soll sich wieder öffnen und ich kann das Spiel von neu starten.

Jedoch hab ich beim testen gemerkt, dass der Timer(welcher in der Spiel-Frame-Klasse iniziert wird) nach dem Schließen durch die oben genannte Art und Weise immer noch exestiert, da die Ausgabe,welche durch den Timer erfolgt, fortlaufend stattfindet,obwohl das Fenster "geschlossen" ist.

Nun suche ich einen Weg wie Ich den JFrame komplett schließen kann und mich wieder im Menü befinde ohne das noch irgendwelche Bestandteile des alten Frames existieren.

Vielleicht war das ja deutlicher 😀
 
Meinst du mit Timer vielleicht einen geöffneten Thread?

Variablen kannst du bei klicken auf Schließen ja auch einfach zurücksetzen.
z.B clear oder = null

Oder du legst sie bei start des neuen Spieles neu an. Somit werden diese einfach neu implementiert.

Gruß Grim
 

Zurück
Oben