Allora: setBackground ok, setBorder ok (non so perché hai usato 2 createTitledBorder ma se il risultato ti va bene .. ok). setForeground dubito che abbia senso, visto JDesktopPane di per sé non visualizza testo.

Quote Originariamente inviata da cerza Visualizza il messaggio
codice:
desktopPane.setLayout(new BorderLayout());
Questo di certo non serve. La proprietà 'layout' di JDesktopPane per default vale null = nessun layout manager. Non so dire ora se settare un layout causa problemi o no .... comunque non serve visto che JDesktopPane deve fare da "desktop" per più finestre draggabili a piacere.

Per la creazione del internal frame, dovresti seguire la sequenza di impostazioni descritta nell'esempio in How to Use Internal Frames, perché perlomeno quella è la sequenza corretta e che funziona.