用easyX做游戏背景,图片无法显示
系统没有报错,主要涉及相关的代码如下是image相关的,图片文件也放在了.sln文件同一目录下
/*
函数名:UI_LoadImage
函数功能:加载图片
参数:无参数
返回值:无
*/
void UI_LoadImage()
{
loadimage(&StartBgImage, _T("img\\backgruound1.png"));
loadimage(&GameBgImage,_T("img\\background2.jpg"));
;
}
//////////////////////////////////////////////////////////////////
//游戏初始倒计时界面
//游戏开始函数 (定义函数)
/*
函数名:UI_StartView
函数功能:显示游戏开始倒计时界面
参数:无参数
返回值:无
*/
//游戏初始倒计时界面
void UI_StartView()
{
char str[2] = { 0 };//定义字符串数组
int num = 3;//局部变量
initgraph(500, 650);//创建游戏窗口,(宽,高)
setbkmode(TRANSPARENT);
putimage(0, 0, &StartBgImage);//输出图片
settextstyle(36, 0, _T("宋体"));//字体设置函数(字体高度,宽度,字形)
circle(240, 300, 50);//画圆函数 (圆心x坐标,y坐标,半径)
outtextxy(100, 200, _T("俄罗斯方块倒计时"));//输出确定坐标字符串函数(横坐标,纵坐标,输出的内容)
for (num = 3; num > 0; num--)//倒计时3>>1循环
{
//整数转字符串
_itoa_s(num, str, 10);
outtextxy(233, 285, str);
//延时
Sleep(1000);//延时1s 1-1ms
}
}
//////////////////////////////////////////////////////////////////
/*
函数名:UI_GameView
函数功能:显示游戏进行时界面
参数:无参数
返回值:无
*/
//显示游戏主界面
void UI_GameView()//自定义函数
{
cleardevice();//清屏函数*此代码注意要在末尾加()才有用
setbkmode(TRANSPARENT);
putimage(0, 0, &GameBgImage);
rectangle(10, 10, 315, 615);//画长方形函数 左上坐标 x,y 右下坐标 x,y
rectangle(335, 10, 480, 210);//右上角下一个方块界面
rectangle(335, 230, 480, 390);//右中间分级框
rectangle(335, 415, 480, 615);//操作说明框
settextstyle(24, 0, _T("宋体"));//说明字体
outtextxy(350, 180, "下一个方块");
setcolor(RGB(255, 255, 255));
outtextxy(385, 240, _T("分数"));
outtextxy(385, 320, _T("等级"));
//操作说明 ↑ ↓ ← →
setcolor(CYAN);
outtextxy(360, 455, "操作说明");
outtextxy(360, 480, "↑:旋转");
outtextxy(360, 505, "↓:下降");
outtextxy(360, 530, "←:左移");
outtextxy(360, 580, "→:右移");
outtextxy(360, 580, "空格:暂停");
}
//////////////////////////////////////////////////////////////////
结果如图
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”