文章目录
- 介绍
- 效果展示
- 源代码
- 素材
- 总结
介绍
去年看到过,今天突然想到,记录下来。给初学者留个好印象。
关于开发工具------浪漫烟花文章有介绍
效果展示
动态图
源代码
#include<easyx.h>
#include<stdio.h>
#include<time.h>
#include"mmsystem.h"
#pragma comment(lib,"winmm.lib")
struct Point //位置
{
int x;
int y;
};
IMAGE img[10];//10张照片
void initImgage()
{
char buf[128] = { 0 }; //图片的路径
for (int i = 0; i < 10; i++)
{
sprintf_s(buf, "images\\%d.jpg", i + 1);
loadimage(&img[i], buf, 40, 40);//40x40大小
}
}
void main()
{
initgraph(800, 800);
Point arr[46] = { { 395, 268 },{ 406, 222 },{ 416, 193 },{ 441, 162 },
{ 468, 133 },{ 500, 117 },{ 537, 105 },{ 577, 107 },{ 617, 120 },
{ 649, 146 },{ 666, 173 },{ 680, 211 },{ 683, 247 },{ 680, 293 },
{ 675, 338 },{ 660, 385 },{ 640, 440 },{ 616, 484 },{ 580, 529 },
{ 557, 573 },{ 530, 610 },{ 493, 645 },{ 460, 675 },{ 422, 696 },
{ 381, 676 },{ 350, 654 },{ 320, 626 },{ 292, 606 },{ 257, 570 },
{ 230, 540 },{ 200, 500 },{ 180, 470 },{ 160, 430 },{ 140, 390 },
{ 126, 342 },{ 117, 293 },{ 120, 250 },{ 133, 203 },{ 160, 170 },
{ 200, 140 },{ 240, 130 },{ 280, 135 },{ 312, 146 },{ 340, 170 },
{ 360, 195 },{ 375, 230 } };
initImgage();
mciSendString("open qiqiu.mp3", 0, 0, 0);
mciSendString("play qiqiu.mp3", 0, 0, 0);
int index = 0;
while (1)
{
cleardevice();
for (int i = 0; i < 46; i++)
{
putimage(arr[i].x, arr[i].y, &img[(i + index) % 10]);
putimage(400, 400, 100, 100, &img[(i + index) % 10], -.10, -10);
}
index++;
Sleep(1000);
}
closegraph();
}
素材
新建一个文件夹images里面存放图片,我这里是jpg格式的,你也可以放其他格式,代码改一下就好。图片命名也要求1-10.jpg。
图片路径和源码放在同一级下面。
总结
文件夹名称要和代码中的一致,路径一定要放对,.cpp同一级,图片命名1-10.jpg。代码中出现easyx.h未识别就是图形库没安装,如果mciSendString(“open qiqiu.mp3”, 0, 0, 0);报错,你使用的是Unicode字节,在项目属性–》配置属性–》高级–》字符集–》改成多字节获取直接"“前面加上L就可以。mciSendString(L"open qiqiu.mp3”, 0, 0, 0);