Я обнаружил, что все, что нужно, - это включить
table = new JTable(model);
// this enables horizontal scroll bar
table.setAutoResizeMode( JTable.AUTO_RESIZE_OFF );
, а затем, когда требуемая ширина и высота области просмотра, будет подсчитано:
frame.getContentPane().add(new JScrollPane(table))
table.setPreferredScrollableViewportSize(new Dimension(width,height));