ho provato a fare come dici:

ho costruito una classe che deriva da jPanel con tutto il contenuto che mi serve

poi nell'applicazione ho inserito uno jScrollPane
e da codice ho inserito un istanza del pannello da me creato dentro lo scroll col seguente codice (dimmi perfavore se ho sturato!):

scroll.getViewport().add(pannello,null);

Tutto funziona tranne quando faccio girare l'applicazione:
nessun errore, ma lo scroll non fa affatto il suo dovere.
Mi spiego: non escono fuori le barre di scorrimento e quindi del mio pannelo creato si vede solo la parte superiore sinistra.
Eppure nelle proprietà dello scroll le policies per la comparsa delle barre di scorrimento sono "as_needed".

Se riuscite a campire dove sbaglio ve ne sono grato!

Ciao