Sei stato gentilissimo, il tuo aiuto mi è stato enorme, non potresti mai immaginare che soddisfazione, il tuo consigli mi ha aperto la mente, mi hai fatto capire una grande cosa.

Ecco la mia soluzione finale:

classe ImgPan carica l'immagine e disegna il pannello:

import javax.swing.*;
import java.awt.*;

public class ImgPan extends JPanel {
Image img1;

public ImgPan(){
Toolkit tk = Toolkit.getDefaultToolkit();
img1 = tk.getImage("./springfild.jpg");
MediaTracker mt = new MediaTracker(this);
mt.addImage(img1, 1);
// aggiunta di eventuali altre immagini
try { mt.waitForAll(); }
catch (InterruptedException e){}
}
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawImage(img1, 0, 0, null);
/* Immagine (img1), posizione nel pannello (0,0)
e un oggetto (null, cioè nessuno) a cui notificare
l'avvenuto caricamento */
}
}

classe menuprincipale la quale crea un pannello disegnato e ci aggiungo le componenti sopre

import java.awt.*;
import javax.swing.*;
import java.awt.color.*;
import java.awt.image.BufferedImage;

public class menuPrincipale extends JFrame{

JLabel titolo = new JLabel("CONSILGI DAI SIMPSON");
ImgPan pannello = new ImgPan();

public menuPrincipale(){
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(640, 480);
this.setResizable(true);
pannello.add(titolo);
this.setContentPane(pannello);
}
}

ed in fine il main che mi avvia il tutto
public class start {
public static void main(String[] v){
menuPrincipale f = new menuPrincipale();
f.show();
}
}



Ti sarò infinitamente grato

Cmq mi vedrai molto presto ancora su questo forum perchè sicuramente nasceranno altri problemi.

Spero che questa soluzione sia utile a qualcuno.