JGridLayout zwischen Zeilen bestimmter Abstand

Daviddiviad

Mitglied
Hi Leute,
gibt es eine Möglichkeit zwischen zwei bestimmten Zeilen im GridLayout einen größeren Abstand fest zu legen? Im Konstruktor kannst du ja Abstand für alle Festlegen. ???:L

Gruß, Daviddiviad
 
Hallo Daviddavid,

was Du vielleicht machen könntest, einfach mehrere Panels mit jeweils 2 oder, jenachdem mehr Inhalten erstellen und dann für jedes Panel nen GridLayout erstellen, und alle zusammen in ein übergeordnetes Panel packen, ebenfalls mit GridLayout 🙂
Wär vielleicht die einfachste Variante.
 
Das Problem ist ja, dass das GridLayout automatisch skaliert. Somit wäre das Platzhalterpanel so groß wie der Inhalt. Dann hätte ich ja nicht diesen Effekt von z.B.: 20 px Freiraum.
Trotzdem Danke, David
 
Eine andere Variante wäre vielleicht, wenn Du dir einen eigenen LayoutManager erstellst mit deinen Vorstellungen zur Raumgestaltung. Wie Du das machst, findest Du hier irgendwo im Forum ^^

Wie viele Komponente willst Du denn ins Panel packen? und wo soll welcher Abstand sein?

Hier wäre vllt nen Beispiel:

Java:
import java.awt.GridLayout;

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


public class Buttonexperiment extends JFrame{

	public static void main(String[] args) {
		
		Buttonexperiment be = new Buttonexperiment();
		be.setLocationRelativeTo(null);
		be.setVisible(true);
		be.setResizable(true);
		be.setDefaultCloseOperation(EXIT_ON_CLOSE);
		
	}

	public Buttonexperiment()
	{
		JPanel panel1 = new JPanel(new GridLayout(3,1,0,10));
		JPanel panel2 = new JPanel(new GridLayout(2,1,0,10));
		JButton button1 = new JButton("Button1");
		JButton button2 = new JButton("Button2");
		panel2.add(button1);
		panel2.add(button2);
		JPanel panel3 = new JPanel(new GridLayout(2,1,0,20));
		JButton button3 = new JButton("Button3");
		JButton button4 = new JButton("Button4");
		panel3.add(button3);
		panel3.add(button4);
		JPanel panel4 = new JPanel(new GridLayout(2,1,0,30));
		JButton button5 = new JButton("Button5");
		JButton button6 = new JButton("Button6");
		panel4.add(button5);
		panel4.add(button6);
		panel1.add(panel2);
		panel1.add(panel3);
		panel1.add(panel4);
		add(panel1);
		pack();
	}
}

Da sollten 6 Buttons kommen in unterschiedlichen Abständen 🙂 Hast das vllt so gemeint?
 

Zurück
Oben