我实际上学习了如何用C编程,我有一点问题。我想在我的程序中显示一个图像,但我不知道为什么它不起作用。我想要显示的图像不会出现。我只看到黑色背景。
具有主要功能的文件
#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 :(得分:0)
您需要提供位图图像的完整路径。如果图像与程序位于同一目录中,则在使用<>附上包含后,当前代码将起作用。