Forse perchè hai scelto (o è impostato di default) un BorderLayout? Per poter ottenere quello che ti serve hai 2 strade:

1) Cambi LayoutManager e ne trovi uno che ti dia quello che ti serve

2) Disabiliti il LayoutManager (ponendolo a null) e definisci posizionee dimensioni di ciascun controllo (utilizzando il metodo setBounds() ).


Ciao.