Wie kann ich ein erstelltes JPanel meinem Frame hinzufügen? Sämtliche Versuche sind so ausgegangen, dass das JPanel nicht angezeigt wird. Ich habe dabei eine Klasse die von JFrame erbt. Hier der Code für das JPanel:
Hier der Code für das JFrame (da steht jetzt nix drin, was das JPanel irgendwie aufrufen könnte, wie gesagt, habe schon viel versucht und nix hat gefunzt. Will das der Code somit übersichtlich ist.):
Java:
public class MainFrame extends JFrame {
//1. Initialisieren des Panels und Übergabe, des zu verwendenden LayoutManagers
JPanel p = new JPanel(new GridBagLayout());
//2. Initialisieren der GridBagConstraints
GridBagConstraints gbc = new GridBagConstraints();
public void GridBagLayoutM() {
//3. Initialisieren der Komponenten
JButton northButton = new JButton("Norden");
JButton westButton = new JButton("Westen");
JButton centerButton = new JButton("Zentrum");
JButton southButton = new JButton("Süden");
JButton eastButton = new JButton("Osten");
//4. benötigte GridBagConstraints-Attribute konfigurieren
gbc.gridx = 1; //Spalte 1 (Zählung beginnt bei 0)
gbc.gridy = 0; //Zeile 0
//5. Komponente ins Layout setzen
p.add(northButton, gbc);
//wie 4. -> Attribute können wieder verwendet werden
gbc.gridx = 0;
gbc.gridy = 1;
//wie 5.
p.add(westButton, gbc);
//wie 4. -> Attribute können wieder verwendet werden
gbc.gridx = 1;
gbc.gridy = 1;
//wie 5.
p.add(centerButton, gbc);
//wie 4. -> Attribute können wieder verwendet werden
gbc.gridx = 2;
gbc.gridy = 1;
//wie 5.
p.add(eastButton, gbc);
//wie 4. -> Attribute können wieder verwendet werden
gbc.gridx = 1;
gbc.gridy = 2;
//wie 5.
p.add(southButton, gbc);
}
Hier der Code für das JFrame (da steht jetzt nix drin, was das JPanel irgendwie aufrufen könnte, wie gesagt, habe schon viel versucht und nix hat gefunzt. Will das der Code somit übersichtlich ist.):
Java:
public MainFrame() {
super("Test");
setSize(500, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
init();
pack();
setVisible(true);
}