Problem mit JFrame in separater Klasse

alias1

Neues Mitglied
Grüße,
bin neu hier im Forum und hab direkt mal eine Frage,
schreibe derzeit ein kleines Programm in welchem ich aus einem Hauptmenü in (Klasse 1) auf ein anderes Fenster in (Klasse 2) zugreife und das Hauptmenü (Klasse 1) schließe. Dann soll durch einen Knopfdruck auf einen Button in Klasse 2 wieder zu Klasse 1 zurückgekehrt werdenund dann Eben Das Fenster aus Klasse 2 geschlossen werden.

Das funktioniert auch wunderbar, aber leider nur einmal. Wenn ich Klasse 2 aus Klasse 1 zum ersten Mal aufrufe schließt sich Klasse 1 klicke ich aber auf zurück öffnet sich klasse 1 aber Klasse 2 bleibt offen.
Versuche ich es testweise mit start aus Klasse 2 schließt sich Klasse 2 auch und klasse 1 öffnet sich, Aber bei erneutem Aufruf schließt sich Klasse 1 nichtmehr.

Ich weiß nicht woran es liegt. hier mal der relevante code, vll. findet ihr meinen fehler...


Klasse 1:
Java:
JButton btnNewButton_2 = new JButton("Untermenü");
		btnNewButton_2.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent args) {
				Untermenü HSLöffnen = newUntermenü();
				HSLöffnen.frameh.dispose();
				HSLöffnen.frameh.setVisible(true);
				frame.dispose();
				HSLöffnen.initialize(); 
}
		});

Klasse 2:
Java:
JButton btnZurck = new JButton("Zur\u00FCck");
		btnZurck.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent args) {
				Hauptfenster Mainöffnen = new Hauptfenster();
				Mainöffnen.frame.setVisible(true);
				frameh.dispose();
				Mainöffnen.initializemain();
			}
		});

Über Hilfe wäre ich sehr froh :)
 

jonas.r

Mitglied
Hey du,
was bis jetzt passiert:

Button1:
1. Du erzeugst ein neues Objekt vom Typ Untermenü.
2. Dann schließt du sofort einen JFrame und machst ihn danach wieder sichtbar ???
3. einen anderen JFrame schließt du
4. dann initialisierst du das erstellte Objekt

Button2:
1. Du erzeugst ein neues Objekt vom Typ Hauptfenster
2. Machst ein JFrame sichtbar
3. einen anderen schließt du
4. du initialisierst das erstellte Objekt.

Irgendwie weicht das total von dem ab, was du erzählst hast was du willst. Oder ich versteh es nicht, weil es umständlich programmiert ist.

Mach es doch so:

Die Main Klasse benutzt du als ViewController, das heißt alle Aktionen gehen nur über die Main.
Die Main erzeugt also einen JFrame (oder deine Klasse1) der das Menü enthält. Bei einem Klick auf den Button "sagst" du deiner Main, also dem Controller, dass das eben erstellte JFrame wieder geschlossen werden soll (setVisible(false)) und ein neues JFrame (oder deine Klasse2) geöffnet werden soll. Bei einem Klick auf den zurück button sagst du einfach deinem Controller, dass das 2. Jframe geschlossen und das 1. wieder sichtbar gemacht werden soll.

Als code:

Controller (Beinhaltet auch main-Methode)
Java:
import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class Controller {
	
	private JFrame menue;
	private JFrame otherFrame;
	
	public Controller(){
		menue = new Hauptmenue(this);
		showFrame(menue);
	}
	
	public void openOtherFrame(){
		menue.setVisible(false);
		
		otherFrame = new OtherFrame(this);
		showFrame(otherFrame);
	}
	
	public void backToMenue(){
		if(otherFrame != null){
			otherFrame.dispose();
		}
		
		menue.setVisible(true);
	}
	
	private void showFrame(final JFrame f){	
		SwingUtilities.invokeLater(new Runnable(){
			@Override
			public void run() {
				f.setVisible(true);
			}			
		});
	}
	
	public static void main(String[] args) {
		new Controller();
	}

}

Hauptmenue:
Java:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;

public class Hauptmenue extends JFrame {
	private static final long serialVersionUID = 1409265571792832096L;

	private Controller con;
	private JButton button;
	
	public Hauptmenue(Controller con){
		this.con = con;
		
		setTitle("Hauptmenü");
		setSize(800, 600);
		setLocationRelativeTo(null);
		setResizable(true);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		
		button = new JButton("Zum anderen Frame");
		button.addActionListener(new ToOtherFrameListener());
		
		this.add(button);
	}
	
	private class ToOtherFrameListener implements ActionListener{

		@Override
		public void actionPerformed(ActionEvent e) {
			con.openOtherFrame();
		}
		
	}
}

OtherFrame:
Java:
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;

public class OtherFrame extends JFrame {
	private static final long serialVersionUID = 947622177727021223L;

	private Controller con;
	private JButton button;

	public OtherFrame(Controller con) throws HeadlessException {
		this.con = con;
		
		setTitle("Anderer Frame");
		setSize(800, 600);
		setLocationRelativeTo(null);
		setResizable(true);
		
		button = new JButton("Zurück");
		button.addActionListener(new BackToManueListener());
		
		this.add(button);
	}

	private class BackToManueListener implements ActionListener{

		@Override
		public void actionPerformed(ActionEvent e) {
			con.backToMenue();
		}
		
	}
}


So. Bei mir funktioniert das =D

Liebe Grüße,

Jonas
 

VfL_Freak

Top Contributor
Moin,

bin neu hier im Forum und hab direkt mal eine Frage,
schreibe derzeit ein kleines Programm in welchem ich aus einem Hauptmenü in (Klasse 1) auf ein anderes Fenster in (Klasse 2) zugreife und das Hauptmenü (Klasse 1) schließe. Dann soll durch einen Knopfdruck auf einen Button in Klasse 2 wieder zu Klasse 1 zurückgekehrt werdenund dann Eben Das Fenster aus Klasse 2 geschlossen werden.

Das funktioniert auch wunderbar, aber leider nur einmal. Wenn ich Klasse 2 aus Klasse 1 zum ersten Mal aufrufe schließt sich Klasse 1 klicke ich aber auf zurück öffnet sich klasse 1 aber Klasse 2 bleibt offen.
Versuche ich es testweise mit start aus Klasse 2 schließt sich Klasse 2 auch und klasse 1 öffnet sich, Aber bei erneutem Aufruf schließt sich Klasse 1 nichtmehr.
Klassen?? Was für Klassen denn bloß? Wer ruft wo was auf?
Dein Code erscheint mir ziemlich wirr ...

Poste bitte Deinen aktuellen Code (also nach den Änderungen, die durch jonas.r angeregt wurden). Hier hat doch keiner Lust, groß rumzuraten :autsch:

Zudem ... es gilt immer: KEINE Umlaute in Variablen-, Klassen- sonstigen Namen :idea:

Gruß
Klaus
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
GianaSisters JFrame mit JInternalFrames, Keylistener-Problem AWT, Swing, JavaFX & SWT 9
M JFrame Graphics.drawString Problem AWT, Swing, JavaFX & SWT 11
O Problem mit JFrame auf Linux Mint 13 Maya in VirtualBox AWT, Swing, JavaFX & SWT 3
B Schwer zu beschreibendes Problem mit JFrame oder JButton AWT, Swing, JavaFX & SWT 8
S JFrame problem mit Scrolling AWT, Swing, JavaFX & SWT 2
P Problem beim erstellen eines JPanel in einem JFrame AWT, Swing, JavaFX & SWT 7
L JFrame/Content Pane height Problem AWT, Swing, JavaFX & SWT 4
F Swing Problem mit KeyListener||paintComponent() in JFrame AWT, Swing, JavaFX & SWT 12
L Swing Größen-Problem mit JFrame AWT, Swing, JavaFX & SWT 2
Developer_X Swing JFrame problem AWT, Swing, JavaFX & SWT 5
F jFrame Problem. AWT, Swing, JavaFX & SWT 3
T JFrame Componenten Problem AWT, Swing, JavaFX & SWT 17
B Swing Problem mit Jframe AWT, Swing, JavaFX & SWT 9
Iron Monkey JFrame Problem mit setAlwaysOnTop AWT, Swing, JavaFX & SWT 2
M JFrame - Problem mit Bildaufbau AWT, Swing, JavaFX & SWT 17
L JFrame Refresh-Problem AWT, Swing, JavaFX & SWT 4
A Problem mit Jframe und mouseevent AWT, Swing, JavaFX & SWT 10
F JFrame Close Problem AWT, Swing, JavaFX & SWT 1
M JFrame Problem AWT, Swing, JavaFX & SWT 4
C TextArea Problem :( TextArea über komplettem JFrame AWT, Swing, JavaFX & SWT 2
T Editor auf Basis JFrame in ein JPanel wandeln - Problem! AWT, Swing, JavaFX & SWT 5
X JFrame Icon problem AWT, Swing, JavaFX & SWT 3
G Swing Jframe Problem AWT, Swing, JavaFX & SWT 4
Y Problem mit JFrame und Panel (Schliessen eines JFrame) AWT, Swing, JavaFX & SWT 8
O JFrame Problem AWT, Swing, JavaFX & SWT 2
V Listener Problem im JFrame AWT, Swing, JavaFX & SWT 4
V JFrame -> JDialog -> JDialog: Problem owner AWT, Swing, JavaFX & SWT 3
G MouseEvent Problem mit JFrame über einen modalen JDialog AWT, Swing, JavaFX & SWT 3
B Kleines JFrame Problem (oder doch größer?) AWT, Swing, JavaFX & SWT 2
A Problem mit JFrame AWT, Swing, JavaFX & SWT 2
G Problem mit der Anzeige von jLabel. Unlesbar wenn der Text geändert wird. AWT, Swing, JavaFX & SWT 28
H 2D-Grafik Problem mit Paint AWT, Swing, JavaFX & SWT 1
S Layout - Problem AWT, Swing, JavaFX & SWT 1
Tassos JavaFX/Problem mit der Maussteuerung in Stackpane AWT, Swing, JavaFX & SWT 7
sserio Java Fx - Problem AWT, Swing, JavaFX & SWT 3
A Problem Spiel auf Panel der GUI zu bringen AWT, Swing, JavaFX & SWT 1
A JavaFX Controller Problem AWT, Swing, JavaFX & SWT 1
TheWhiteShadow JavaFX ListView Problem beim Entfernen von Elementen AWT, Swing, JavaFX & SWT 1
E LayoutManager Welcher Layout-Mix löst mein Problem? AWT, Swing, JavaFX & SWT 3
Umb3rus JavaFX Problem mit PropertyValueFactory: can not read from unreadable property AWT, Swing, JavaFX & SWT 1
T Problem mit paintComponent() AWT, Swing, JavaFX & SWT 17
AmsananKING Java Menü-Problem AWT, Swing, JavaFX & SWT 1
K JavaFX Resizing-Problem beim BorderLayout (Center Component) beim Arbeiten mit mehreren FXMLs AWT, Swing, JavaFX & SWT 2
G Instance OF Problem AWT, Swing, JavaFX & SWT 9
FrittenFritze Ein Problem mit der CSSBox, die Größe wird nicht angepasst AWT, Swing, JavaFX & SWT 5
M Problem mit dem Anzeigen von Frames im Vordergrund AWT, Swing, JavaFX & SWT 5
Badebay Problem mit JButton AWT, Swing, JavaFX & SWT 2
newJavaGeek Grid-Layout problem AWT, Swing, JavaFX & SWT 7
J JavaFX Löschen im Tabelview macht Problem AWT, Swing, JavaFX & SWT 15
JavaTalksToMe JavaFx ExekutorService Problem AWT, Swing, JavaFX & SWT 2
Zrebna Problem bei Eventhandling (Value soll nach jedem erneutem Klick gelöscht werden) AWT, Swing, JavaFX & SWT 4
B Problem mit JavaFX AWT, Swing, JavaFX & SWT 5
J css Problem AWT, Swing, JavaFX & SWT 5
B JavaFX habe mein Problem fett markiert AWT, Swing, JavaFX & SWT 2
A Swing Filter-Problem AWT, Swing, JavaFX & SWT 1
temi JavaFX Problem mit IntelliJ und JavaFx 11 unter XUbuntu AWT, Swing, JavaFX & SWT 3
L Java FX Problem mit Ubuntu 18 und JavaFx AWT, Swing, JavaFX & SWT 27
H JTable TableCellEditor-Problem AWT, Swing, JavaFX & SWT 0
kodela Swing Problem mit Warten-Dialog AWT, Swing, JavaFX & SWT 16
B JavaFx Scene Builder Problem AWT, Swing, JavaFX & SWT 2
B [Problem] Java öffnet Word-Datein nicht AWT, Swing, JavaFX & SWT 14
T DataBinding Problem AWT, Swing, JavaFX & SWT 5
Blender3D Problem mit € Symbol Font Gotham Windows 10 Swing AWT, Swing, JavaFX & SWT 11
T Problem mit JTable Sortierung AWT, Swing, JavaFX & SWT 2
J Problem mit Platfrom run later AWT, Swing, JavaFX & SWT 15
J Problem mit Platfrom run later AWT, Swing, JavaFX & SWT 0
D Swing SwingUtils / Thread Problem AWT, Swing, JavaFX & SWT 3
L JavaFX Problem beim Aufrufen einer Methode AWT, Swing, JavaFX & SWT 5
T Swing Problem mit Datum und FormattedTextField AWT, Swing, JavaFX & SWT 2
S AWT Java print dialog Problem AWT, Swing, JavaFX & SWT 0
olfibits JavaFX Problem mit HTMLEditor AWT, Swing, JavaFX & SWT 0
W SWT hover-background-problem with first column in TreeViewer AWT, Swing, JavaFX & SWT 0
M Problem mit Add JScrollPane AWT, Swing, JavaFX & SWT 25
Mario1409 Swing JTextArea scroll Problem AWT, Swing, JavaFX & SWT 0
N Swing Problem mit loop AWT, Swing, JavaFX & SWT 2
S Swing Problem mit Button und ActionListener AWT, Swing, JavaFX & SWT 5
S Swing & Clean und build Problem AWT, Swing, JavaFX & SWT 12
S JLabel setText() Problem AWT, Swing, JavaFX & SWT 6
I 2D-Grafik Problem beim Ändern der Farbe eine 2d Objekts AWT, Swing, JavaFX & SWT 3
G Swing Splitpane Problem AWT, Swing, JavaFX & SWT 1
F Problem mit der FXML Rectangle Shape AWT, Swing, JavaFX & SWT 2
N JavaFX Stranges Problem mit der Autoscroll-Eigenschaft von Textareas AWT, Swing, JavaFX & SWT 0
E Java FX FXML Problem mit html Scriptausführung AWT, Swing, JavaFX & SWT 2
J JavaFX Intersect Problem mit Shapes AWT, Swing, JavaFX & SWT 10
R JavaFX MediaPlayer AVI-Problem AWT, Swing, JavaFX & SWT 1
M Swing Problem mit ListCellRenderer AWT, Swing, JavaFX & SWT 7
D Problem mit JTable AWT, Swing, JavaFX & SWT 1
F GUI Auflösung ändern - Koordianten und Proportions Problem AWT, Swing, JavaFX & SWT 21
J Problem mit Button darstellung AWT, Swing, JavaFX & SWT 23
M Problem mit Layoutmanagern... Hilfe wäre sehr nett. AWT, Swing, JavaFX & SWT 2
S 2D-Grafik Problem mit Variablen AWT, Swing, JavaFX & SWT 4
7 JavaFX Problem beim Zeichnen eines Dreiecks in einem GUI AWT, Swing, JavaFX & SWT 6
M Swing AttributiveCellTableModel addRow() Problem AWT, Swing, JavaFX & SWT 1
J Swing Problem mit Graphics Methode AWT, Swing, JavaFX & SWT 4
N JavaFX Problem mit table multiple selection AWT, Swing, JavaFX & SWT 5
K CheckBox Problem AWT, Swing, JavaFX & SWT 5
Grevak DisplayMode Problem seit Windows 10 AWT, Swing, JavaFX & SWT 2
S Swing Eigene JComboBox Problem! AWT, Swing, JavaFX & SWT 1
B Swing Problem mit Bildpfad AWT, Swing, JavaFX & SWT 4
N Swing Problem beim Scrollen mit JScrollPane AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen

Neue Themen


Oben