Bonjour,

J'arrive pas a faire ce ke je veu: Afficher une image ..apres une autre.. dans un delay de 1sec ..

voici un lien pour telecharger les images : http://rapidshare.de/files/2842169/images_SDL.rar

le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#include "SDL/SDL.h"
 
SDL_Surface * mem;
SDL_Event event;
void initsdl()
{
     SDL_Init(SDL_INIT_VIDEO);
     mem = SDL_SetVideoMode(774,484,32,SDL_HWSURFACE|SDL_DOUBLEBUF);
}
 
int main(int argc, char **argv)
{
    SDL_Surface * sec1[9],*fond;
    SDL_Rect rsec1[9],rfond;
    initsdl();
    int sx=1,sy=1;
    sec1[0]= SDL_LoadBMP("0.bmp"); //chaque chiffre
    sec1[1] = SDL_LoadBMP("1.bmp"); //chaque chiffre
    sec1[2] = SDL_LoadBMP("2.bmp");
    sec1[3] = SDL_LoadBMP("3.bmp");
    sec1[4] = SDL_LoadBMP("4.bmp");
    sec1[5] = SDL_LoadBMP("5.bmp");
    sec1[6] = SDL_LoadBMP("6.bmp");
    sec1[7] = SDL_LoadBMP("7.bmp");
    sec1[8] = SDL_LoadBMP("8.bmp");
    sec1[9] = SDL_LoadBMP("9.bmp");
    fond = SDL_LoadBMP("sub.bmp"); //l'image de fond..
    rfond.x = 0;
    rfond.y = 0;
    rsec1[9].x = 0;
    rsec1[9].y = 0;
 
while (1)
{
 
    SDL_PollEvent (&event);
    if (event.type == SDL_KEYDOWN && event.key.keysym.sym == SDLK_RETURN)
    break;
 
 
 
    //SDL_SetColorKey(sec1[9],SDL_SRCCOLORKEY,SDL_MapRGBA(sec1[9]->format,255,0,255,0));
    SDL_BlitSurface(fond,NULL,mem,&rfond);
    int etape=1;
    etape ++;
 
 
    if (etape == 10)
    {
      etape = 0;
    }
 
    if (etape == 0)
     {
      SDL_BlitSurface(sec1[0],NULL,mem,&rsec1[9]);
       {
        if (etape == 1)
         {
          SDL_BlitSurface(sec1[1],NULL,mem,&rsec1[9]);
           if (etape == 2)
            {
             SDL_BlitSurface(sec1[2],NULL,mem,&rsec1[9]);
              {
               if (etape == 3)
                {                                         
                 SDL_BlitSurface(sec1[3],NULL,mem,&rsec1[9]);
                  {
                   if (etape == 4)
                    {
                     SDL_BlitSurface(sec1[4],NULL,mem,&rsec1[9]);
                      {
                       if (etape == 5)
                        {
                         SDL_BlitSurface(sec1[5],NULL,mem,&rsec1[9]);
                          {
                           if (etape == 6)
                            {
                             SDL_BlitSurface(sec1[6],NULL,mem,&rsec1[9]);
                              {
                               if (etape == 7);
                                {
                                 SDL_BlitSurface(sec1[7],NULL,mem,&rsec1[9]);
                                  {
                                   if (etape == 8)
                                    {
                                     SDL_BlitSurface(sec1[8],NULL,mem,&rsec1[9]);
                                      {
                                       if (etape == 9)
                                        {
                                         SDL_BlitSurface(sec1[9],NULL,mem,&rsec1[9]);
                                        }}}}}}}}}}}}}}}}}}
    SDL_Flip(mem);
    SDL_Delay(1000);
}
 SDL_Quit();
}
Vous avez une solution plus simple et efficace?
Merci d'avance