Menu de funcionalidades utilizando swing

Olá, estou criando um menu de funcionalidades de um sistema para um trabalho de faculdade e gostaria de saber se alguém pode me ajudar com os swing e me orientar qual dos layouts eu devo utilizar.

Se trata de um menu de funcionalidades, onde eu vou adicionar várias imagens (botões) que chamarão as funcionalidades do meu sistema. Gostaria que ao maximizar a tela os botões se reposicionassem automaticamente.
Obrigado.

Estude sobre os Layout Managers ( https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html ),
Menus ( https://docs.oracle.com/javase/tutorial/uiswing/components/menu.html ) e ToolBars ( https://docs.oracle.com/javase/tutorial/uiswing/components/toolbar.html ).

Abraço.

Consegui fazer utilizando o grid layout,
Porém a “quantidade de funcionalidades por linha” fica fixa, não encontrei uma forma de fazer com que ao redimensionar o mesmo redimensione a quantidade de ícones na linha (ex ao aumentar o tamanho caiba mais ícones ao diminuir menos).

Oi Igor, tudo certo?

Com certeza o FlexBox do CSS3 vai te ajudar, dá uma olhada nesse joguinho pra aprender como que funciona:

Abcz!

O tópico é um pouco antigo (3 meses) mas, o Flow Layout faz o que vc quer, ele vai preenchendo toda a linha, quando ela esta toda preenchida, a proóima linha vai se preenchendo, a organização dos componentes usando Flow layout também é automático quando você redimensiona a tela.