JDesktopPane "bestücken"

Status
Nicht offen für weitere Antworten.

manuche

Bekanntes Mitglied
Hallo,

ich schreibe mir grade ein Prgramm mit mehreren Toolbars. Da die Toolbars über der eigentlichen "Arbeitsfläche" liegen, hab ich mir überlegt, ein JLayeredPane anzuwenden... Wenn ich mich jetzt nicht recht täusche ist der Sinn eines LayeredPanes, die Komponenten auf verschiedene Ebenen aufzuteilen, sodass sie sich überlappen können!
Allerdings werden mir meine Komponenten so angezeigt, als wären sie auf einer Ebene... :(

Code:
package de.gui.pane;

import java.awt.BorderLayout;
import java.awt.Color;

import javax.swing.JComponent;
import javax.swing.JDesktopPane;


public final class MainContainer extends JDesktopPane{   //JDesktopPane erbt von JLayeredPane
	private static final long	serialVersionUID	= -2466918036665142374L;

	private JComponent			toolbar;
	private JComponent			objectsbar;
	private JComponent			mainpanel;
	private JComponent			hierarchybar;

	public MainContainer(JComponent toolbar, JComponent objectsbar, JComponent mainpanel, JComponent hierarchybar) {
		super ();
		this.toolbar = toolbar;
		this.objectsbar = objectsbar;
		this.mainpanel = mainpanel;
		this.hierarchybar = hierarchybar;
		this.init ();
	}

	private void init (){
		this.setLayout (new BorderLayout(10, 10));
		this.setBackground (Color.BLACK);
		this.add(toolbar, BorderLayout.NORTH, JDesktopPane.PALETTE_LAYER);
		this.add(objectsbar, BorderLayout.WEST, JDesktopPane.PALETTE_LAYER);
		this.add(mainpanel, BorderLayout.CENTER, JDesktopPane.DEFAULT_LAYER);
		this.add(hierarchybar, BorderLayout.EAST, JDesktopPane.PALETTE_LAYER);
	}
}

Ich hab das Geühl es könnte am Layout-Manager liegen allerdings mein ich mir mal iwo angeeignet zu haben, dass der Layout-Manager auf die einzelnen Layer vererbt wird...
 

André Uhres

Top Contributor
In einem JLayeredPane ist standardmäßig kein Layoutmanager eingestellt.
Daher müssen alle integrierten Komponenten feste Positionsangaben und Größen haben.
Dazu kann man beispielsweise die Methode setBounds(int x, int y, int width, int height) benutzen.

Wenn man einem JLayeredPane einen Layoutmanager zuordnet,
so werden alle Komponenten gemäß den Richtlinien so angeordnet, als wären sie alle in einer Ebene.
Siehe auch: How to Use Layered Panes. Dort findest du auch den Abschnitt "Laying Out Components in a Layered Pane".
 

manuche

Bekanntes Mitglied
Also komm ich wohl nicht drum rum und muss mir nen LayoutManager selbst schreiben...
Hab schon nen bisschen nach nem Tutorial für Layoutmanager gesucht, allerdings nichts gefunden!
Kennt jemand zuföllig eins??? ;)
 

Tobias

Top Contributor
Äh, eine floatable JToolBar macht das doch automatisch? Oder hab ich jetzt das Problem nicht verstanden?

siehe Doku zu JToolBar und JToolBar#setFloatable()
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
olfibits Swing JavaFX-Frame in JDesktopPane darstellen? AWT, Swing, JavaFX & SWT 2
D JinternaFrame Steuerung in JDesktopPane AWT, Swing, JavaFX & SWT 5
J Swing Z-Order in einer JDesktopPane AWT, Swing, JavaFX & SWT 15
H Swing JInternalFrame, JDesktopPane und ein BorderLayout AWT, Swing, JavaFX & SWT 2
J JDesktopPane: Aero für JInternalFrames AWT, Swing, JavaFX & SWT 3
S JDesktopPane bei Button-Klick anzeigen geht nicht AWT, Swing, JavaFX & SWT 5
M JDesktopPane AWT, Swing, JavaFX & SWT 4
M width und height bei JDesktopPane AWT, Swing, JavaFX & SWT 3
A JDesktopPane + Interne Programmicons AWT, Swing, JavaFX & SWT 5
M4nuel Warum überlagert JDesktopPane mein JMenuBar? AWT, Swing, JavaFX & SWT 5
S JDesktopPane wird nicht richtig angezeigt AWT, Swing, JavaFX & SWT 3
DeeDee0815 JDesktopPane scrollbar AWT, Swing, JavaFX & SWT 2
S Problem mit JDesktopPane AWT, Swing, JavaFX & SWT 11
C JdesktopPane Hintergrundbild AWT, Swing, JavaFX & SWT 6
S JDesktopPane mit JSplitPane und JTree AWT, Swing, JavaFX & SWT 3
G 2 Fragen JDesktopPane AWT, Swing, JavaFX & SWT 4
G kleine JDesktopPane problem AWT, Swing, JavaFX & SWT 2
F Bild in JInternalFrame in JDesktopPane - GrößenProblem ?! AWT, Swing, JavaFX & SWT 4
J jinternalframe ohne jdesktoppane AWT, Swing, JavaFX & SWT 3
M Halbkreiszeichnen(Canvas) - Diesen mit Mouseevents bestücken AWT, Swing, JavaFX & SWT 3
sliwalker ContentPane leeren und völlig neu bestücken? AWT, Swing, JavaFX & SWT 4
M JDialog in for-Schleife mit Komponenten bestücken AWT, Swing, JavaFX & SWT 6

Ähnliche Java Themen

Neue Themen


Oben