LayoutManager Kurze Layout Frage - eine komponente mittig?

GUI-Programmer

Top Contributor
Hallo

Ich habe ein JPanel mit einer Komponente (z.B. ein JButton). Dieser Component soll eine ganz bestimmte Größe haben, die sich nicht ändert und er soll sich exakt in der Mitte des JPanels befinden. Das JPanel jedoch ändert seine Größe beim Resizen.

Also welches Layout würdert ihr mir empfehlen???

Habe ein Lösung gefunden:
Java:
private JPanel mittig(Component comp) {
	JPanel panel = new JPanel();
	panel.setOpaque(false);
	panel.setLayout(new BoxLayout(panel, BoxLayout.X_AXIS));
	panel.add(Box.createHorizontalGlue());
	panel.add(comp);
	panel.add(Box.createHorizontalGlue());
	return panel;
}

Aber vielleicht gibt es ja noch bessere Lösungsvorschläge! 🙂
 
Erzeuge dein Panel z.B. so:
Java:
meinPanel = new JPanel(new GridBagLayout());

und setze dann dort den Button hinein:
Java:
meinPanel.add(meinButton);

Das GridBagLayout befindet sich dann im Standardzustand (ohne definierte GridBagConstraints) und setzt alle Elemente in die Mitte des Containers.
Wenn du noch dem Button eine andere Standardgröße geben möchtest, rufst du an ihm die
Code:
setPreferredSize()
-Methode auf und übergibst dieser die gewünschten Dimensionen.
 

Zurück
Oben