1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
| import java.applet.Applet;
import java.awt.Color;
import java.awt.Event;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.MediaTracker;
import java.awt.image.FilteredImageSource;
import java.awt.image.ImageFilter;
import java.awt.image.ImageProducer;
import java.awt.image.ReplicateScaleFilter;
public class ChargeImage extends Applet implements Runnable {
Thread tr;
private static final long serialVersionUID = 1L;
// Buffer pour l'imageO de fond
Image imageO;
Image imageR;
// MediaTracker, pour suivre le chargement des images
MediaTracker mt = null;
// --------------------------------------------------
// INITIALISATION DE L'APPLET
// --------------------------------------------------
public void init() {
// Couleur de fond de l'applet en blanc
setBackground ( Color.white );
// Chargement de l'imageO de fond
imageO = getImage ( getCodeBase () , getParameter ( "IMAGE" ).toString () );
// Initialiser le MediaTracker
mt = new MediaTracker ( this );
// Démarrer le suivi du chargement d'images
mt.addImage ( imageO , 0 );
// Attendre que toutes les images soient chargées
try {
mt.waitForID ( 0 );
//ImageFilter replicate = new ReplicateScaleFilter( imageO.getWidth( this ) / 2,imageO.getHeight( this ) / 2 );
ImageFilter replicate = new ReplicateScaleFilter ( this.getWidth () , this.getHeight () );
ImageProducer prod = new FilteredImageSource ( imageO.getSource () , replicate );
imageR = createImage ( prod );
mt.addImage ( imageR , 1 );
mt.waitForID ( 1 );
} // end try
catch ( InterruptedException e ) {
} // end catch
} // end init()
// --------------------------------------------------
// AFFICHAGE
// --------------------------------------------------
public void paint( Graphics g ) {
g.drawImage ( imageR , 0 , 0 , this );
} // end if
} // end paint()
public ChargeImage() {
if (tr == null) {
tr = new Thread(this);
tr.start();
}
}
public void run() {
// TODO Raccord de méthode auto-généré
}
} // end ChargeImage |
Partager