Пока сделал так:
private void customizeColumnModel(TableColumnModel columnModel) {
int width = (table.getWidth() == 0)? ViewGUI.WINDOW_WIDTH : table.getWidth();
final int defaultColumnWidth = 100;
int columnWidth = defaultColumnWidth;
int columnCount = columnModel.getColumnCount();
int widthAllColumns = columnCount * defaultColumnWidth;
if (widthAllColumns < width) {
columnWidth = width / columnCount;
}
for (int i = 0; i < columnCount; i++) {
setColumnWidth(columnModel.getColumn(i), columnWidth, columnWidth, columnWidth);
}
}
То есть получаю ширину главного окна, и в зависимости от этого вычисляю ширину столбцов. В принципе, нормально. Приложение тестовое, поэтому графика неважна. Но если будут более хорошие и простые предложения, то обязатально рассмотрю.