A
Alohaaaa
Gast
Wieso kann ich die Tabelle (buidTable()) nicht über den Rückgabewert der Methode buildPanel() eben diesem Panel adden. Falls die Beschreibung des Problems im Quelltext nicht hilfreich ist, einfach bescheid sagen. Ich finde, dass es so besser nachzuvollziehen ist.
Danke schonmal.
Java:
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
public class Gui{
private String[][] data = new String[][]
{
{"11", "12" ,"13", "14"},
{"21", "22" ,"23", "24"},
{"31", "32", "33", "34"}
};
private String[] header = new String []
{
"Spalte 1", "Spalte 2", "Spalte 3", "Spalte 4"
};
public JPanel buildTablePanel()
{
JPanel mainPanel = new JPanel(new BorderLayout());
//mainPanel.add(buildTable());//-----------------------------<<<<<<<<<<-------------------<<<<<<<<<<<----
return mainPanel;
}
public JScrollPane buildTable()
{
JTable table = new JTable(data, header);
JScrollPane scrlTable = new JScrollPane(table);
return scrlTable;
}
public JFrame createFrame()
{
JFrame frame = new JFrame();
frame.setTitle("Tabellentest");
frame.setSize(800,600);
frame.setLocationRelativeTo(null);
frame.setResizable(false);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
buildTablePanel().add(buildTable()); // funktioniert nicht. Wäre doch eigentlich genau dasselbe wie "mainPanel.add(buildTable())" in der Methode "buildTablePanel()". Die Tabelle wird nur dargestellt, wenn "mainPanel.add(buildTable())" in "buildTablePanel()" nicht auskommetiert ist. Wieso gehts nicht mit der Methode die das Panel zurückgibt?
frame.add(buildTablePanel()); // funktioniert. wenn "mainPanel.add(buildTable())" nicht auskommentiert ist
return frame;
}
public static void main(String[] args)
{
Gui gui = new Gui();
JFrame frame = gui.createFrame();
frame.setVisible(true);
}
}
Danke schonmal.