【发布时间】:2010-03-28 00:55:45
【问题描述】:
我只是在试用 allegro 库,这是我目前得到的代码:
#include <allegro.h>
int main(int argc, char *argv[]) {
allegro_init(); // initialize the allegro libraries
install_keyboard(); // initialize keyboard functions
set_color_depth(16); // set the color depth
set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0); // set up 640*480px window
BITMAP *pic = NULL;
pic = load_bitmap("C:/picture.bmp", NULL); // load the picture
blit(pic, screen, 0, 0, 0, 0, 1000, 1000);
readkey();
destroy_bitmap(pic);
return 0;
}
END_OF_MAIN()
它工作正常,但是当我运行它时,当程序的窗口打开时,Windows 7 将主题从 Aero 更改为 Aero basic。如果你不确定我的意思,会弹出这个(我从 Google 得到的,这就是为什么它说 Vista 而不是 Windows 7):
(来源:suitedcowboys.com)
- 为什么?
- 如何确保不会发生这种情况?
【问题讨论】:
-
当你写“生产”代码时,一定要检查返回值,尤其是那些有充分理由失败的东西,比如
load_bitmap。 -
是的,我知道。我永远不会发布这样的垃圾代码。 xD 谢谢。