2017-03-09 2 views
0

Ich lerne tatsächlich, wie man mit C programmiert und ich habe ein kleines Problem. Ich möchte ein Bild auf meinem Programm anzeigen, aber ich weiß nicht, warum das nicht funktioniert. Das Bild, das ich anzeigen möchte, wird nicht angezeigt. Ich sehe nur einen schwarzen Hintergrund.Wie kann ich ein bmp-Bild auf meinem kleinen Programm unter Windows anzeigen?

Die Datei mit der Hauptfunktion

#include stdlib.h 
#include stdio.h 
#include SDL/SDL.h 

void pause(); 
int main(int argc, char *argv[]) { 
    SDL_Surface *ecran = NULL, *imageDeFond = NULL; 
    SDL_Rect positionFond; 

    positionFond.x = 0; 
    positionFond.y = 0; 

    SDL_Init(SDL_INIT_VIDEO); 

    SDL_WM_SetIcon(SDL_LoadBMP("sdl_icone.bmp"), NULL); 
    ecran = SDL_SetVideoMode(800, 600, 32, SDL_HWSURFACE); 

    SDL_WM_SetCaption("Chargement d'images en SDL", NULL); 

    /* Chargement d'une image Bitmap dans une surface */ 
    imageDeFond = SDL_LoadBMP("lac_en_montagne.bmp"); 

    SDL_BlitSurface(imageDeFond, NULL, ecran, &positionFond); 

    SDL_Flip(ecran); 

    pause(); 

    SDL_FreeSurface(imageDeFond); 
    SDL_Quit(); 
    return EXIT_SUCCESS; 
} 

void pause() { 
    int continuer = 1; 
    SDL_Event event; 
    while (continuer) { 
    SDL_WaitEvent(&event); 
    switch (event.type) { 
     case SDL_QUIT: 
     continuer = 0; 
    } 
    } 
} 
+0

Welche Fehlermeldungen erhalten Sie? Was passiert im Vergleich zu dem, was Sie erwarten? –

+0

Ich habe nur ein schwarzes Layout ohne Bild, da ich kein Bild in meinen Code eingefügt habe. –

+0

Ich erhalte keine Fehlermeldungen, nur die Tatsache, dass das Bild nicht angezeigt wird. –

Antwort

0

Sie müssen den vollständigen Pfad der Bitmap-Bilder geben. Wenn sich die Bilder im selben Verzeichnis wie das Programm befinden, funktioniert Ihr aktueller Code nach dem Einschließen der Includes mit <>.

Verwandte Themen