Swing Einem JFrame zur Laufzeit ein Panel zuweisen

Status
Nicht offen für weitere Antworten.

eQuest

Mitglied
Hi Leute,
ich arbeite gerade an einem größerem Projekt und bin auf folgendes Problem gestoßen: ich habe ein JFrame mit einer Menubar. Wenn nun hier ein Menuitem ausgewählt wird, will ich dem Frame das dazupassende Panel zuweisen (je nach Menüpunkt anderes Panel). Leider wird kein Panel angezeigt. Ich schreibe hier mal, wie ich das gemacht habe:

JFrame mit integrierten Listenern für die Menuitems
Java:
public Pizza_Frame(){
initialize();
}

private void initialize(){
....

		//Mit diesem Anweisungsblock sitzt das Panel praktisch auf dem Frame
			panel.setLayout(null);

			{ // compute preferred size
				Dimension preferredSize = new Dimension();
				for(int i = 0; i < panel.getComponentCount(); i++) {
					Rectangle bounds = panel.getComponent(i).getBounds();
					preferredSize.width = Math.max(bounds.x + bounds.width, preferredSize.width);
					preferredSize.height = Math.max(bounds.y + bounds.height, preferredSize.height);
				}
				Insets insets = panel.getInsets();
				preferredSize.width += insets.right;
				preferredSize.height += insets.bottom;
				panel.setMinimumSize(preferredSize);
				panel.setPreferredSize(preferredSize);
			}
		}
		contentPane.add(panel);
		panel.setBounds(0, 0, 620, 400);
....
}
 //Bei Betätigen eines bestimmten Menüitems wird z.B. dieser Listener aufgerufen, der dann das dazugehörige Panel zuweist
	private void hinzufuegen_action(ActionEvent e) {
		// TODO add your code here
		System.out.print("hinzufuegen");
		Pizza_Panel_Hinzufuegen panel = new Pizza_Panel_Hinzufuegen();
		panel.title.setText("Neue Bestellung");
		this.panel = panel;
		this.repaint();
	}

Die Actionlistener funktionieren einwandfrei (also wenn ich ein Menuitem betätige, wird zum Listener gesprungen). Dachte durch einfache Zuweisung könnte man einen Panelwechsel durchführen , da habe ich mich aber anscheinend getäuscht. Kann mir hier wer helfen?

Danke im Vorraus
 
Zuletzt bearbeitet von einem Moderator:

javimka

Top Contributor
Mit [c] this.panel = panel;[/c] willst du wahrscheinlich ausdrücken, dass das Frame nun das neue panel anzeigen soll. Deine selbstgeschriebene Klasse hat nun zwar eine Referenz auf dieses Panel, aber zeichnen tut sie das natürlich noch lange nicht. Woher sollte das Frame auch wissen, dass gerade dieses Panel gezeichnet werden soll.
Das Frame zeichnet nur, was du mit add(panel) hinzugefügt hast. Wenn du noch Komponenten im Frame hast, die raus müssen, musst du die mit dem remove Befehl noch rausschmeissen.
 

eQuest

Mitglied
ok, ich hab jetz einfach mal diese Zuweisung durch
Java:
		remove(this.panel);
		add(panel);
ersetzt. Leider immer noch ohne Erfolg.

EDIT: Damit die Frage vl. etwas auf den Punkt gebracht wird, wie wechsle ich in einem JFrame die Panels aus?

EDIT2: Ok, ich habe jetzt ausprobiert, ich nehme ein normales JFrame (nicht meine selbst geschriebene Klasse) und adde mein eigenes JPanel, dann wird es angezeigt.
 
Zuletzt bearbeitet:

eQuest

Mitglied
ok danke für den link, ich konnte dieses problem somit lösen (ich musste das extra content panel nicht anlegen, hat auch einem standard JFrame funktioniert). Im heutigen weiteren Verlauf der Programmierung bin ich auf ein erneutes Problem gestoßen, da das aber eher mit jdbc zu tun hat, werde ich das dort extra posten (wenn ich in der sufu nichts finde ;)).
 

L-ectron-X

Gesperrter Benutzer
Dein Code
Java:
remove(this.panel);
add(panel);

muss nur noch um eine Zeile ergänzt werden, dann funktioniert das.
[java=3]validate();[/code]
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M In einem JFrame Menüs & . während der Laufzeit verändern AWT, Swing, JavaFX & SWT 6
M Seltsame Exception bei setVisible(true) Methode in einem JFrame AWT, Swing, JavaFX & SWT 2
E Swing Mausposition auf einem JFrame erkennen AWT, Swing, JavaFX & SWT 5
H Daten aus einer XML(x83-Datei) in einem JFrame anzeigen lassen AWT, Swing, JavaFX & SWT 9
T Bilder bei einem JFrame einfügen AWT, Swing, JavaFX & SWT 4
T Reihenfolge der Komponenten im einem JFrame AWT, Swing, JavaFX & SWT 8
W Swing Hilfe beim Einbinden von Bildern in einem JFrame AWT, Swing, JavaFX & SWT 8
GreenTeaYT Wie vergebe Ich den Jframe Title den Namen aus einem Element von der Arraylist ? AWT, Swing, JavaFX & SWT 4
Y Kann man Buttons in einem JFrame rund machen ? AWT, Swing, JavaFX & SWT 2
J Swing unterschiedliche Inhalte in einem JFrame AWT, Swing, JavaFX & SWT 3
Shams Probleme bei dem Hinzufügen von Komponenten zu einem JFrame AWT, Swing, JavaFX & SWT 3
D Swing &MouseListener in einem JFrame, sinnig? AWT, Swing, JavaFX & SWT 11
P Swing Aktualisieren von JFrame in einem onClick-Ereignis AWT, Swing, JavaFX & SWT 11
M Swing JFrame in einem Panel zeichnen AWT, Swing, JavaFX & SWT 3
J Swing Ausgabe in einem JFrame AWT, Swing, JavaFX & SWT 8
W Zeichnen in einem JFrame nach Resize AWT, Swing, JavaFX & SWT 7
L JFrame größe in einem ActionEvent ändern AWT, Swing, JavaFX & SWT 4
P Problem beim erstellen eines JPanel in einem JFrame AWT, Swing, JavaFX & SWT 7
C Checkbox-zustände in einem JFrame speichern AWT, Swing, JavaFX & SWT 8
X Einem JFrame einen Dialog als Parent setzen. Möglich? AWT, Swing, JavaFX & SWT 4
M 2x JComponent in einem JFrame darstellen? AWT, Swing, JavaFX & SWT 7
J Swing Hintergrundbild auf einem JFrame AWT, Swing, JavaFX & SWT 7
M Swing Scrollbalken in einem JFrame AWT, Swing, JavaFX & SWT 10
R Hinzufügen mehrer JPanels zu einem JFrame AWT, Swing, JavaFX & SWT 2
M Text-Datei in einem JFrame öffen? AWT, Swing, JavaFX & SWT 2
M Automatische Anpassung eines JPanels in einem JFrame AWT, Swing, JavaFX & SWT 6
K JFrame + 2 Bildschirme -> automatisch auf einem Bildschir AWT, Swing, JavaFX & SWT 5
S GUI, dynamisches Wechseln von JPanels in einem JFrame AWT, Swing, JavaFX & SWT 2
U Jpanels auf einem Jframe austauschen AWT, Swing, JavaFX & SWT 2
F Datenübergabe von einem JFrame auf ein anderes AWT, Swing, JavaFX & SWT 2
G Zwischen Panels in einem JFrame wechseln AWT, Swing, JavaFX & SWT 4
M JFrame in einem JFrame? AWT, Swing, JavaFX & SWT 5
A Automatische Scrollbalken bei einem JFrame AWT, Swing, JavaFX & SWT 8
L-ectron-X Daten aus einem JDialog einem JFrame übergeben AWT, Swing, JavaFX & SWT 4
MartinNeuerlich Kann mir jemand, der einen Mac mit einem m1 oder m2-Chip hat, eine POM geben mit der Javafx-Fullscreen beim Mac mit m-Chip funktioniert? AWT, Swing, JavaFX & SWT 1
W 2 JTables in einem Swing-Fenster? AWT, Swing, JavaFX & SWT 5
J JavaFx PDF in einem Element in einem Fenster anzeigen. AWT, Swing, JavaFX & SWT 11
Mojo7310 Ändern von Text in JLabel mit einem Button AWT, Swing, JavaFX & SWT 11
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
S Swing zu einem Datum Tage addieren/subtrahieren AWT, Swing, JavaFX & SWT 6
Jose05 NullPointerException bei Beschreiben eines Labels aus einem Array AWT, Swing, JavaFX & SWT 12
ExceptionOfExpectation Textdarstellung auf einem Canvas mit Hilfe von repaint(); AWT, Swing, JavaFX & SWT 6
2 JavaFX die ChoiceBox leitet den String nicht weiter oder es komm zu einem NullPointer AWT, Swing, JavaFX & SWT 8
L JavaFX javafx.fxml.LoadException bei einem Taschenrechner AWT, Swing, JavaFX & SWT 5
Z GUI Forms - Mehrere Fenster in einem Projekt AWT, Swing, JavaFX & SWT 18
N Nur bei einem Textfiled Nullpointerexception bei getText() AWT, Swing, JavaFX & SWT 1
H JComobox in einem JPopupNeu AWT, Swing, JavaFX & SWT 7
P Button simpler random auf einem JPanel verteilen? AWT, Swing, JavaFX & SWT 3
W Inject bei einem Swing Frontend AWT, Swing, JavaFX & SWT 8
Z Swing Drag and Drop mit einem JButton AWT, Swing, JavaFX & SWT 1
Z Mit einem Button einen anderen Button Triggern AWT, Swing, JavaFX & SWT 3
D AWT Wie kann ich ein Frame von einem anderen aus beeinflussen? AWT, Swing, JavaFX & SWT 7
T Setzen von der Schriftgröße bei einem Shell AWT, Swing, JavaFX & SWT 15
A checkbox in einer TableView abhängig von einem anderen Celleninhalt disablen AWT, Swing, JavaFX & SWT 1
J Fenster mit Inhalten aus einem Array Füllen AWT, Swing, JavaFX & SWT 4
D JavaFX Ein Parameter von einem Stage(GUI) zu einem anderen übergeben AWT, Swing, JavaFX & SWT 6
S JavaFX Variablen in einem FXML File verwenden AWT, Swing, JavaFX & SWT 8
A Objekt von einem Window erstellen? AWT, Swing, JavaFX & SWT 8
Drachenbauer Swing Wie ändere ich die helle geklickt-Farbe von einem JButton? AWT, Swing, JavaFX & SWT 4
ralfb1105 JavaFX Alert Confirmation Dialog aus einem Service Thread AWT, Swing, JavaFX & SWT 8
F JavaFX Aktuelle Zeit in einem TextField anzeigen AWT, Swing, JavaFX & SWT 7
M JavaFX Bild zur ImageView in einem Kreis anzeigen. AWT, Swing, JavaFX & SWT 4
F JavaFX PNG aus einem resource Ordner laden AWT, Swing, JavaFX & SWT 8
F JavaFX Checken ob der Input einem festgelegten Format gleicht AWT, Swing, JavaFX & SWT 7
B JavaFX Bilder in einem Gewissen bereich halten AWT, Swing, JavaFX & SWT 1
cool_brivk24 BufferedImage einem ClickEvent hinzufügen AWT, Swing, JavaFX & SWT 13
Q-bert Doppelclick auf einem List item AWT, Swing, JavaFX & SWT 9
J JavaFX von einem Array aus Buttons herausfinden auf welcher geklickt wurde aus dem Array. AWT, Swing, JavaFX & SWT 1
C SWT autosize bei gc.drawString() auf einem Label AWT, Swing, JavaFX & SWT 7
R Farbe zu einem Eckpunkt generieren AWT, Swing, JavaFX & SWT 2
F abgeleitete Panels von einem ContentPanel AWT, Swing, JavaFX & SWT 4
heinz ketchup While-Schleife in einem Service für GUI AWT, Swing, JavaFX & SWT 22
D zwei JLabel stapeln in einem JPanel AWT, Swing, JavaFX & SWT 5
H Hintergrundbild in einem Programm AWT, Swing, JavaFX & SWT 4
F RGB-Werte aus einem String einlesen AWT, Swing, JavaFX & SWT 26
stroggi Swing Mehrere transparentes Objekte (Grafiken) über einem Bild (JLabel) darstellen AWT, Swing, JavaFX & SWT 4
I JavaFX Fenster wird auf einem anderen Rechner anders dargestellt AWT, Swing, JavaFX & SWT 5
DaCrazyJavaExpert Swing Zwei gleichgroße Panels in einem Scrollpane mit Layout AWT, Swing, JavaFX & SWT 9
F AWT mehrere Panels in einem Frame AWT, Swing, JavaFX & SWT 17
L JavaFX Mehrere JavaFX Szenen mit einem Menü AWT, Swing, JavaFX & SWT 1
L JavaFX Klickverhalten bei einem Panel AWT, Swing, JavaFX & SWT 1
V JavaFX Button Controller Fehler, trotz Erfolg in einem anderem Code? AWT, Swing, JavaFX & SWT 7
Y Darstellung und MouseHover bei bestimmten Wörtern in einem String AWT, Swing, JavaFX & SWT 2
H Geld pro Sekunde in einem Clickerspiel AWT, Swing, JavaFX & SWT 4
Java_RY wie kann ich auf JButtons in einem JPanel zugreifen AWT, Swing, JavaFX & SWT 3
F Zeichnung einem JPanel im Layoutmanager zuweisen AWT, Swing, JavaFX & SWT 3
Ghostman1711 Hinzufügen ausgewählter Dateinen des Filechoosers zu einem JTable AWT, Swing, JavaFX & SWT 9
T AWT Farben in einem Bild ändern AWT, Swing, JavaFX & SWT 8
R Swing JLabel berührung an einem anderen Label prüfen AWT, Swing, JavaFX & SWT 3
M Text in einem Label fett setzen AWT, Swing, JavaFX & SWT 4
E Swing Copy und Paste eines einzelnen Knoten aus einem JTree AWT, Swing, JavaFX & SWT 1
7 JavaFX Problem beim Zeichnen eines Dreiecks in einem GUI AWT, Swing, JavaFX & SWT 6
K JavaFX Mehrere Cell Editors in einem TreeView Item AWT, Swing, JavaFX & SWT 2
F JavaFX JavaFX - Hintergrundmusik in einem seperatem Task/Service AWT, Swing, JavaFX & SWT 6
D JavaFX Gesetzte Variable in einem Controller im Controller laden AWT, Swing, JavaFX & SWT 1
D Swing JCombobox in einem JTable vorbelegen AWT, Swing, JavaFX & SWT 4
T Swing JTable Zeile mit ausgelesenen Werten mit Hilfe von einem Button hinzufügen AWT, Swing, JavaFX & SWT 1
E JavaFX MenuBar und ToolBar zu einem Bereich AWT, Swing, JavaFX & SWT 3
D Timer für Bildfolge in einem jLabel AWT, Swing, JavaFX & SWT 5
C (JavaFX 8) SQLite Datenbank in einem TableView darstellen AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben