Hallo,
ich habe das folgende Problem:
Zu einem JFrame habe ich als Komponenten 4 JPanel addiert. In einem dieser JPanel möchte ich eine Tabelle platzieren, die das ganze JPanel ausfüllt.
Dazu habe ich eine JTable erstellt, der meine Daten übergeben und anschließend ein JScrollPane mit meiner Tabelle konstruiert. Dieses JScrollpane wurde nun zum JPanel addiert. Siehe folgendes Codefragment:
Meine Tabelle umfasst 30 Spalten. Gewünscht hätte ich mir nun einen Ausschnitt aus meiner Tabelle zu sehen und mit der Scrollleiste zum interessierenden Teil miener Tabelle hinscrollen zu können.
Es wird aber die gesamte Tabelle so dicht gedrängt angezeigt, dass man den Tabelleninhalt nicht mehr richtig lesen kann.
Als nächstes habe ich nun noch folgenden Code hinzugefügt, um die Tabellenbreite zu vergrößern.
Damit habe ich nun tatsächlich erreicht, dass die Spaltenbreite 50Pixel beträgt. Nun wird aber nur noch ein Teil meiner Tabelle angezeigt. Die Gesamtweite meiner Tabelle beträgt nun 385 Pixel, die Gesamtweite meines Scrollpanes 550 Pixel. D.h. die Tabelle umfasst nicht mal das gesamte ScrollPane. Außerdem kann ich beim ScrollPane nichts scrollen. D.h. Ich sehe nur 7 Spalten meiner Tabelle, der Rest ist nicht zu sehen.
Es wäre schön, wenn jemand eine Idee hätte, wie das richtig funktioniert. Ich verbringe nämlich schon eine ganze Zeit damit und komm nicht weiter.
Danke
ich habe das folgende Problem:
Zu einem JFrame habe ich als Komponenten 4 JPanel addiert. In einem dieser JPanel möchte ich eine Tabelle platzieren, die das ganze JPanel ausfüllt.
Dazu habe ich eine JTable erstellt, der meine Daten übergeben und anschließend ein JScrollPane mit meiner Tabelle konstruiert. Dieses JScrollpane wurde nun zum JPanel addiert. Siehe folgendes Codefragment:
Code:
table = new JTable(tabellendaten, spaltenköpfe);
scroll = new JScrollPane(table, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
scroll.setMinimumSize(new Dimension(100,100));
scroll.setSize(arbeitsPanel.getSize().width,arbeitsPanel.getSize().height);
arbeitsPanel.add(scroll,BorderLayout.CENTER);
arbeitsPanel.addComponentListener(this);
arbeitsPanel.repaint();
Meine Tabelle umfasst 30 Spalten. Gewünscht hätte ich mir nun einen Ausschnitt aus meiner Tabelle zu sehen und mit der Scrollleiste zum interessierenden Teil miener Tabelle hinscrollen zu können.
Es wird aber die gesamte Tabelle so dicht gedrängt angezeigt, dass man den Tabelleninhalt nicht mehr richtig lesen kann.
Als nächstes habe ich nun noch folgenden Code hinzugefügt, um die Tabellenbreite zu vergrößern.
Code:
for (int i=0; i < spaltenköpfe.length ; i++){
table.getColumnModel().getColumn(i).setMinWidth(50);
}
Es wäre schön, wenn jemand eine Idee hätte, wie das richtig funktioniert. Ich verbringe nämlich schon eine ganze Zeit damit und komm nicht weiter.
Danke