头文件 icon.h:
#pragma once
#ifndef _ICON_H_
#define _ICON_H_#include<graphics.h>
#include<string.h>
#include<stdlib.h>
#include<iostream>
#include<string>
#include<Windows.h>
#include<Mmsystem.h>
#pragma comment(lib,"winmm.lib")
using namespace std;void init()
{initgraph(600, 720);setbkcolor(RGB(255, 255, 255));cleardevice();
}void drawTree()
{IMAGE tree;setfillcolor(RGB(255, 255, 255));setbkcolor(RGB(255, 255, 255));loadimage(&tree, "tree.jpg", 600, 580, true);putimage(0, 150, &tree);
}void drawDelc()
{IMAGE delc;setfillcolor(RGB(255, 255, 255));setbkcolor(RGB(255, 255, 255));loadimage(&delc, "delc.jpg", 150, 150, true);putimage(220, 0, &delc);
}void Star(int x,int y)
{IMAGE star;setfillcolor(RGB(255, 255, 255));setbkcolor(RGB(255, 255, 255));loadimage(&star, "star.jpg", 50, 50, true);putimage(x, y, &star);
}void Shining(int x,int y)
{setbkcolor(RGB(255, 255, 255));clearrectangle(x, y, x+50, y+50);Sleep(400);Star(x, y);
}void music()
{mciSendString(TEXT("open Christmas.wav alias bgm"), NULL, 0, NULL);mciSendString(TEXT("play bgm"), NULL, 0, NULL);
}void close()
{getchar();closegraph();
}#endif // !_ICON_H_
music函数播放同目录下的Christmas.wav 音乐,需要自行导入音乐到同目录下,并按情况修改该函数中音乐文件目录,否则没有声音。
图像素材也需要自行导入
cpp文件 圣诞树.cpp:
#include<graphics.h>
#include<string.h>
#include<stdlib.h>
#include<iostream>
#include<string>
#include"icon.h"
using namespace std;int main()
{init();drawTree();drawDelc();Star(60, 360);Star(490, 360);Star(150, 180);Star(400, 180);music();while (1){music();Shining(60, 360);Shining(490, 360);Shining(150, 180);Shining(400, 180);}close();return 0;
}
效果图: