1

不会加载我的图片我的默认错误消息“错误加载图片.bmp”每次都会弹出并且不会运行

#include "allegro.h"

int main(void)
{
    char*filename="picture.bmp";
    BITMAP*image;
    int ret;

    allegro_init();
    install_keyboard();

    set_color_depth(32);
    ret=set_gfx_mode(GFX_AUTODETECT_WINDOWED,640,480,0,0);
    if(ret!=0)
    {
              allegro_message(allegro_error);
              return 1;
              }


    image=load_bitmap(filename,NULL);
    if(!image)
    {
            allegro_message("error loading %s",filename); 
            return 1;
              }

    blit(image,screen,0,0,0,0,SCREEN_W,SCREEN_H);

    destroy_bitmap(image);

    textprintf_ex(screen,font,0,0,1,-1,"%dx%d",SCREEN_W,SCREEN_H);

    while(!keypressed());

    allegro_exit();
    return 0;

}
END_OF_MAIN()
4

2 回答 2

1

您将需要提供更多信息...

  • 你用的是什么平台?(MS Visual C++?Linux?Mac?...)
  • 哪个版本的快板?(我猜是 4.x)


假设您的问题是“如何让我的 Allegro 程序按预期显示我的位图”,尝试

确保生成的可执行文件和图片.bmp 位于同一目录中。我的猜测是您在 Windows 上使用某种类型的 Microsoft IDE,并且您正在尝试从 IDE 中运行程序(例如通过调试菜单或按 F5) 生成的可执行文件放在一个特殊的输出目录中。它找不到您的图片.bmp 文件。

或者,您可以尝试提供 picture.bmp 文件的完整路径。不过,您应该只使用此方法来查看这是否确实是问题所在。

于 2010-11-20T08:07:55.083 回答
0

我相信您的程序可能无法找到您尝试加载的位图图像。尝试在代码中插入位图的确切路径。

例如:

char*filename="C:\My Documents\Pictures\picture.bmp";
于 2010-12-12T04:29:25.810 回答