Mi spiace non sono riuscito a compilare il tuo codice, ho dovuto levare troppa roba probabilmente falsando il test. Mi spiace di non poterti essere d'aiuto. Se mi permetti ti do un consiglio però. Invece di utilizzare il GridGabLayout , il più complesso layout manager delle Swing, perché non costruisci la tua GUI con mattoncini più semplici e più facili da gestire?. Puoi usare vari pannelli per racchiudere i vari gruppi di componenti ed usare dei Layoutmanager molto più banali da configurare per ciascuno di essi. Io almeno ho sempre lavorato così (ammetto di essere arrugginito con le Swing ormai). Ti risparmi molti mal di testa e la struttura è più semplice da comprendere leggendo il codice, inoltre ottieni sicuramente il risultato del ridimensionamento automatico. Ovviamente è solo un consiglio, se devi per forza usare quel layout conviene che usi meno pannelli annidati (ne ho contati ben 3) , che rendono le cose difficili da capire se conti anche la complessità del layout manager.