Nommer 6 images (.jpeg) de : mesimages1 ... jusqu'à ... mesimages6 et voir ce que ça va donner dans un applet.
On peut prendre des images d'extensions (.gif) en un nombre donné : il faut apporter les petites modifications appropriées, alors.
Plus les images sont séquentielles plus bonne est la simlation video.
<center>
<applet code="SimulationVideo.class"
width="400"
height="400"
ALIGN=bottom>
</applet></center>
Source / Exemple :
//Programmed by Billal BEGUERADJ
//Bejaia University
//www.begueradj.50megs.com
import java.applet.*;
import java.awt.*;
public class SimulationVideo extends Applet implements Runnable {
Image mesimges[];int nombreImages;Thread myThread;String dossier;int compteur;int tempsdattente = 100;Image imagehorsecran;Graphics graph; boolean envoyee = true;int px,py,pp; int pox[],poy[]; int arrete = 0; // Si animation arretee
public void init() {
int i;
String chaine;
chaine = getParameter("file");
dossier = (chaine != null) ? chaine : "";
chaine = getParameter("speed");
tempsdattente = 1000 / ((chaine == null) ? 4 : Integer.valueOf(chaine).intValue());
chaine = getParameter("nombreImages");
nombreImages = (chaine == null) ? 16 : Integer.valueOf(chaine).intValue();
imagehorsecran = createImage(size().width, size().height);
graph = imagehorsecran.getGraphics();
// Chargement
mesimges = new Image[nombreImages];
for ( i = 0 ; i < nombreImages ; i++ ) {
mesimges[i] = getImage(getDocumentBase(), dossier + (i+1) + ".jpeg");
}
// Valeurs de initiales
py = size().height - 16;
px = 32;
pp = size().width - 32 - 6;
pox = new int[4];
poy = new int[4];
pox[0] = 10 ; poy[0] = py+7;
pox[1] = 6 ; poy[1] = py+3;
pox[2] = 6 ; poy[2] = py+11;
}
public void start() {
if (myThread == null) {
myThread = new Thread(this);
myThread.start();
}
}
public void stop() {
if (myThread != null) {
myThread.stop();
myThread = null;
}
}
public void run() {
while (true) {
try {Thread.currentThread().sleep(tempsdattente);} catch (InterruptedException e){}
if (arrete==1) repaint();
}
}
public void update(Graphics g) {
paint(g);
}
public void paint(Graphics g) {
int i,j;
j = pp*compteur/(nombreImages-1);
graph.setColor(Color.gray);
graph.fillRect(0, 0, size().width, size().height);
graph.fill3DRect(0, py, 16, 16, true); // commencer boutton
graph.fill3DRect(16, py, 16, 16, true); // arrêter boutton
graph.draw3DRect(px, py, pp+5, 14, true);
graph.draw3DRect(0,0, size().width-1, py-1, true);
graph.setColor(Color.white);
graph.fillRect(px+3+j, py+3, pp-j, 9);
graph.setColor(Color.darkGray);
graph.fillRect(px+3, py+3, j, 9);
graph.fillPolygon(pox, poy, 3);
graph.fillRect(20, py+4, 7, 7);
graph.drawImage(mesimges[compteur], 1, 1, this); // photo
g.drawImage(imagehorsecran, 0, 0, this);
if (envoyee) {
compteur++;
if (compteur >= nombreImages) {
compteur = nombreImages - 1;
envoyee = false;
}
} else {
compteur--;
if (compteur < 0) {
compteur = 0;
envoyee = true;
}
}
}
public boolean mouseDown(java.awt.Event evt, int jx, int jy) {
if ((jx >= 0)&&(jx <= 15)&&(jy >= py)) {
getGraphics().setColor(Color.lightGray);
getGraphics().fillRect(0, py, 15, 15);
}
if ((jx >= 16)&&(jx <= 31)&&(jy >= py)) {
getGraphics().setColor(Color.lightGray);
getGraphics().fillRect(16, py, 15, 15);
}
return(true);
}
public boolean mouseUp(java.awt.Event evt, int jx, int jy) {
if ((jx >= 0)&&(jx <= 15)&&(jy >= py)) {
arrete = 0;
}
if ((jx >= 16)&&(jx <= 31)&&(jy >= py)) {
arrete = 1;
}
repaint();
return(true);
}
public boolean mouseDrag(java.awt.Event evt, int jx, int jy) {
if ((jx >= px)&&(jx <= px+pp)&&(jy >= py)&&(arrete==1)) {
compteur = (jx - px)*nombreImages/pp;
if (compteur>=nombreImages) compteur = nombreImages-1;
if (compteur<0) compteur = 0;
repaint();
}
return(true);
}
public boolean mouseMove(java.awt.Event evt, int jx, int jy) {
if ((jx >= 0)&&(jx <= 15)&&(jy >= py)) {
getAppletContext().showStatus("Commencer la video");
} else {
if ((jx >= 16)&&(jx <= 31)&&(jy >= py)) {
getAppletContext().showStatus("Arret video");
} else {
if ((jx >= px)&&(jx <= px+pp)&&(jy >= py)&&(arrete==1)) {
getAppletContext().showStatus("Control");
} else {
getAppletContext().showStatus("");
}
}
}
return(true);
}
public boolean mouseExit(java.awt.Event evt, int jx, int jy) {
getAppletContext().showStatus("");
return(true);
}
}
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.