头文件 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; }
效果图: