Auto redimensionar dinamicamente as larguras das colunas da JTable

Eu tenho uma JTable com 3 colunas:

- No. #
- Name
- PhoneNumber

Eu quero criar uma largura específica para cada coluna da seguinte forma:

e eu quero que a JTable possa atualizar dinamicamente as larguras de suas colunas, se necessário (por exemplo, inserindo um número grande na coluna#) e mantendo o mesmo estilo da JTable

Resolvi o primeiro problema, usando este código:

myTable.getColumnModel().getColumn(columnNumber).setPreferredWidth(columnWidth);

mas não consegui fazer com que o myTable atualizasse as larguras dinamicamente SOMENTE se a largura atual da coluna não couber no seu conteúdo. Você pode me ajudar a resolver esse problema?

questionAnswers(3)

yourAnswerToTheQuestion