Prima di tutto Image è astratta quindi non puoi istanziare oggetti di questa classe...creati un ImageIcon per contenere l'immagine.
Secondo al metodo paint dai come parametro un oggetto di tipo Graphics e poi quando lo richiami passi un oggetto di tipo Image...già qui mi capirai che qualcosa non torna!
Io suggerirei di fare come nell'esempio del link sopra cioè:
codice:Image immagine; ImageIcon sfondo; sfondo = new ImageIcon("bello.jpg"); JPanel panel = new JPanel() { protected void paint(Graphics g) { g.drawImage(sfondo, 0, 0, sfondo.getWidth(this), sfondo.getHeight(this), this); //facendo diventare sfondo di ImageIcon e non Image come ti ho detto prima. super.paint(g); ) };
Poi semplicemente aggiungi il tuo JPanel appena creata al JFrame.
Tutto questo lo devi fare dentro al costruttore della tua classe che estende JFrame e ricordati che i costruttori vanno SEMPRE dichiarati PUBLIC
e noncodice:public Grafica() { ... }
Ciao.codice:Grafica() { ... }![]()

Rispondi quotando