Devo disegnare un'immagine di sfondo in un jpanel.
Qualcuno mi spiega perchè l'immagine non viene visualizzata.
La visualizzazione avviene solo quando faccio un resize o una riduzione a icona (lo so che viene chiamato automaticamente paintComponent).

Perche' non viene disegnata l'immagine anche all'inizio???

Codice:
import javax.swing.JFrame;

public class Applicazione
{
public static void main(String args[])
{
AlberoBinario c = new AlberoBinario();
}
}




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

public class AlberoBinario extends JFrame
{
private Image immagine;
public AlberoBinario()
{
super("Albero Binario");
setSize(442,300);
immagine = Toolkit.getDefaultToolkit().getImage(getClass().ge tResource("tree.jpg"));

Pannello pannello = new Pannello(immagine);
add(pannello);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);



}


}

Classe Pannello



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


public class Pannello extends JPanel
{
private Image immagine;

public Pannello(Image i)
{
immagine =i;
}


public void paintComponent(Graphics g)
{
super.paintComponent(g);
System.out.print("Ciao");
if(immagine != null)
g.drawImage(immagine,0,0,null);