Allegro 快板5问题

Allegro 快板5问题,allegro,Allegro,下面的代码不起作用;它产生一个空白屏幕。但如果我将填充的矩形线朝着底线更改为: al_draw_filled_rectangle(100, 100, 100+15, 100+15, al_map_rgb(155, 255, 155)); 它在正确的坐标处生成一个正方形。怎么了 #define ALLEGRO_STATICLINK #include <allegro5/allegro.h> #include <allegro5/alle

下面的代码不起作用;它产生一个空白屏幕。但如果我将填充的矩形线朝着底线更改为:

    al_draw_filled_rectangle(100, 100, 100+15, 100+15, al_map_rgb(155, 255, 155));
它在正确的坐标处生成一个正方形。怎么了

    #define ALLEGRO_STATICLINK



     #include <allegro5/allegro.h>
     #include <allegro5/allegro_primitives.h>



    int main(int argc, char **argv)

{
    ALLEGRO_DISPLAY *display;


    if(!al_init())
    {
         return -1;
    }

    display = al_create_display(640, 480);
    if(!display)
    {
        return -1;
    }

    if(!al_init_primitives_addon())
    {
        return -1;
    }


    al_draw_filled_rectangle(73, 493, 73+15, 493+15, al_map_rgb(155, 255, 155));

    al_flip_display();

    al_rest(10);

    return 0;
}
#定义快板静态链接
#包括
#包括
int main(int argc,字符**argv)
{
快板显示*显示;
如果(!al_init())
{
返回-1;
}
显示=创建显示(640480);
如果(!显示)
{
返回-1;
}
if(!al_init_primitives_addon())
{
返回-1;
}
al_-draw_-filled_矩形(73493,73+15493+15,al_-map_-rgb(155255,155));
al_flip_display();
al_rest(10);
返回0;
}

您试图在大于屏幕高度的Y坐标处绘制

al_draw_filled_rectangle(73, 493, 73+15, 493+15, al_map_rgb(155, 255, 155));
在493到493+15之间绘制

493>480和493+15>480

display = al_create_display(640, 480);
这将480设置为您的屏幕高度,因此在该数字上方绘制将不会显示任何内容

当你使用

al_draw_filled_rectangle(100, 100, 100+15, 100+15, al_map_rgb(155, 255, 155));

您现在实际在屏幕上,因此它可以工作。

您正在尝试以大于屏幕高度的Y坐标绘制

al_draw_filled_rectangle(73, 493, 73+15, 493+15, al_map_rgb(155, 255, 155));
在493到493+15之间绘制

493>480和493+15>480

display = al_create_display(640, 480);
这将480设置为您的屏幕高度,因此在该数字上方绘制将不会显示任何内容

当你使用

al_draw_filled_rectangle(100, 100, 100+15, 100+15, al_map_rgb(155, 255, 155));

你现在真的出现在屏幕上了,所以它可以正常工作。

真不敢相信我这么做了。我不相信我做了那件事。谢谢