Hallo,
ich möchte in ein GridBagLayout eine Tabelle einbauen.
Mein JFrame ist 600 Pixel breit, mein JTable 800 Pixel.
Deshalb benutze ich eine JScrollPane. Und ich möchte, dass dann natürlich die Tabelle vertikal gescrolled werden kann.
Jetzt hab ich JScrollPane schon JScrollPane.VERTICAL_SCROLLBAR_ALWAYS übergeben, und mir wird die ScrollBar auch angezeigt. Gemeinerweise aber ohne ScrollBalken!
Wie geht das bitte besser?
LG Julia :wink:
ich möchte in ein GridBagLayout eine Tabelle einbauen.
Mein JFrame ist 600 Pixel breit, mein JTable 800 Pixel.
Deshalb benutze ich eine JScrollPane. Und ich möchte, dass dann natürlich die Tabelle vertikal gescrolled werden kann.
Jetzt hab ich JScrollPane schon JScrollPane.VERTICAL_SCROLLBAR_ALWAYS übergeben, und mir wird die ScrollBar auch angezeigt. Gemeinerweise aber ohne ScrollBalken!
Wie geht das bitte besser?
Code:
public class GUI extends JFrame {
Allocation al = new Allocation();
final JTable table;
public GUI(Allocation al) {
...........
table = new JTable(al.dataRight, columnNames);
TableColumnModel colModel = table.getColumnModel();
colModel.getColumn(0).setPreferredWidth(100);
colModel.getColumn(1).setPreferredWidth(100);
colModel.getColumn(2).setPreferredWidth(100);
colModel.getColumn(3).setPreferredWidth(500);
table.setColumnModel(colModel);
table.setPreferredScrollableViewportSize(new Dimension(930, 800));
JScrollPane sp = new JScrollPane(table, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
.................
JPanel cp = (JPanel)getContentPane();
cp.setBorder(BorderFactory.createEmptyBorder(3,3,3,3));
cp.setLayout(new GridBagLayout());
................
cp.add(sp, new GridBagConstraints(0,1,1,1,1.0,1.0,
GridBagConstraints.EAST, GridBagConstraints.BOTH,new Insets(0,0,3,0), 0, 0));
...............
setSize(600, 900);
}
}
LG Julia :wink: