Grazie per le correzioni, non sono abituato a scrivere nei forum di solito trovo sempre quello che mi serve.
Ho iniziato a studiare java all'università ma è stato un corso di neanche 2 mesi e una piccola parte di grafica (infatti sono rimasto stupito che il progetto fosse solo sulla parte grafica).
Ci hanno spiegato la sintassi del linguaggio ma (chiaramente) all'università ci hanno concesso poca pratica e ho dovuto sgalvirmi da solo.
Cmq ho provato a fare un thread come mi hai consigliato:
codice:
package splash;
import java.awt.*;
import javax.swing.*;
import javax.swing.ImageIcon;
public class MyPanel extends JPanel implements Runnable{
Image img1, img;
Thread t;
int lung;
int i=0;
public MyPanel (){
Toolkit tk=Toolkit.getDefaultToolkit();
img1= tk.getImage ("/home/sgogghy/Immagini/tux.jpg");
MediaTracker mt= new MediaTracker(this);
mt.addImage(img1, 1);
try {mt.waitForAll();}
catch (InterruptedException e) {}
}
public void init(){
img = new ImageIcon ("/home/sgogghy/Scrivania/Icon_SpaceInvaders.png").getImage(); }
public void start() {
if (t == null) {
t = new Thread(this);
t.start();}
}
public void pause(int time) {
try { t.sleep(time); }
catch (InterruptedException e) {}
}
public void run (){
for (i=0;i<1000;i++) // ho pensato ad un piccolo spostamento
{
repaint();
pause(1000);}
}
public void paint(Graphics g) {
g.drawImage(img1, 1, 1, null);
g.drawImage(img, i, 1, null);
}
}
il risultato che ottengo è la visualizzazione di img1 ma non di img.
Dove sbaglio?