資源簡介
c++實(shí)現(xiàn)下雪效果,簡單的的雪花飄落效果。有背景圖,雪花!

代碼片段和文件信息
//?canvasframe.cpp?:?implementation?file
//
#include?“stdafx.h“
#include?“canvasr.h“
#include?“canvasframe.h“
#ifdef?_DEBUG
#define?new?DEBUG_NEW
#undef?THIS_FILE
static?char?THIS_FILE[]?=?__FILE__;
#endif
struct?snow
{
int?x;
int?y;
BOOL?exist;
};
struct?snow1
{
int?x;
int?y;
BOOL?exist;
};
struct?snow2
{
int?x;
int?y;
BOOL?exist;
};
/////////////////////////////////////////////////////////////////////////////
//?canvasframe
IMPLEMENT_DYNCREATE(canvasframe?CframeWnd)
int?icount;
snow?drop[50];//后多,慢
snow?drop1[50];//中
snow?drop2[50];//前(快)
canvasframe::canvasframe()
{
Create(NULL“繪圖窗口“);
CClientDC?dc(this);
int?width?=?dc.GetDeviceCaps(HORZRES);
int?height?=?dc.GetDeviceCaps(VERTRES);
GetWindowRect(?&rect?);
width?=?(?width?-?(?rect.right?-?rect.left?))/2?;
height?=?(height?-?(rect.bottom?-?rect.top?))/2?;
MoveWindow(?width??height??(rect.right?-?rect.left?)??(rect.bottom?-?rect.top?)?true);
GetClientRect(&rect);
mdc?=?new?CDC;
mdc1?=?new?CDC;
mdc->CreateCompatibleDC(&dc);?
mdc1->CreateCompatibleDC(&dc);
bgbmp?=?new?CBitmap;
snow?=?new?CBitmap;
mask?=?new?CBitmap;
snow1?=?new?CBitmap;
mask1?=?new?CBitmap;
snow2?=?new?CBitmap;
mask2?=?new?CBitmap;
temp?=?new?CBitmap;
bgbmp->m_hobject?=?(HBITMAP)::LoadImage(NULL“bground.bmp“IMAGE_BITMAPrect.rightrect.bottomLR_LOADFROMFILE);?
snow->m_hobject??=?(HBITMAP)::LoadImage(NULL“snow.bmp“IMAGE_BITMAP1212LR_LOADFROMFILE);?
mask->m_hobject??=?(HBITMAP)::LoadImage(NULL“mask.bmp“IMAGE_BITMAP1212LR_LOADFROMFILE);?
????snow1->m_hobject?=?(HBITMAP)::LoadImage(NULL“snow1.bmp“IMAGE_BITMAP1616LR_LOADFROMFILE);?
mask1->m_hobject?=?(HBITMAP)::LoadImage(NULL“mask1.bmp“IMAGE_BITMAP1616LR_LOADFROMFILE);?
snow2->m_hobject?=?(HBITMAP)::LoadImage(NULL“snow2.bmp“IMAGE_BITMAP1818LR_LOADFROMFILE);?
mask2->m_hobject?=?(HBITMAP)::LoadImage(NULL“mask2.bmp“IMAGE_BITMAP1818LR_LOADFROMFILE);?
temp->CreateCompatibleBitmap(&dcrect.rightrect.bottom);
mdc->Selectobject(temp);
}
canvasframe::~canvasframe()
{
delete?bgbmp;
delete?snow;
delete?mask;
????delete?snow1;
delete?mask1;
delete?snow2;
delete?mask2;
delete?temp;
delete?mdc;
delete?mdc1;
}
BEGIN_MESSAGE_MAP(canvasframe?CframeWnd)
//{{AFX_MSG_MAP(canvasframe)
ON_WM_TIMER()
ON_WM_CREATE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
//?canvasframe?message?handlers
void?canvasframe::OnTimer(UINT?nIDEvent)?
{
if(count<50)//當(dāng)離子總數(shù)小于50時(shí),產(chǎn)生新粒子
{
drop[count].x?=?rand()%rect.right;
drop[count].y?=?0;
drop[count].exist?=?true;
????????drop1[count].x?=?rand()%rect.right;
drop1[count].y?=?0;
drop1[count].exist?=?true;
drop2[count].x?=?rand()%rect.right;
drop2[count].y?=?0;
drop2[count].exist?=?true;
count++;
}
CClientDC?dc(this);
mdc1->Selectobject(bgbmp);
mdc->Bi
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????1394814??2001-10-02?03:46??CH4-8\BGROUND.BMP
?????文件???????4139??2014-06-22?20:16??CH4-8\canvas.dsp
?????文件????????537??2001-07-05?14:53??CH4-8\CANVAS.DSW
?????文件?????140288??2014-06-23?09:14??CH4-8\CANVAS.NCB
?????文件??????53760??2014-06-23?09:14??CH4-8\CANVAS.OPT
?????文件????????246??2014-06-23?09:13??CH4-8\CANVAS.PLG
?????文件????????744??2001-07-06?14:37??CH4-8\CANVASAPP.CPP
?????文件????????554??2001-07-05?14:52??CH4-8\CANVASAPP.H
?????文件???????5064??2014-06-23?08:33??CH4-8\Canvasfr
?????文件???????1341??2014-06-22?19:54??CH4-8\CANVASfr
?????文件??????16668??2001-10-29?22:50??CH4-8\CANVASR.APS
?????文件????????442??2001-07-06?14:41??CH4-8\CANVASR.CLW
?????文件????????411??2001-07-05?14:45??CH4-8\CANVASR.H
?????文件???????1450??2001-07-05?14:45??CH4-8\CANVASR.RC
?????文件????2352128??2014-06-23?08:33??CH4-8\Debug\canvas.bsc
?????文件????1335368??2014-06-23?08:33??CH4-8\Debug\canvas.exe
?????文件????1718280??2014-06-23?08:33??CH4-8\Debug\canvas.ilk
????I.A....???3771024??2014-06-22?20:12??CH4-8\Debug\canvas.pch
?????文件????2720768??2014-06-23?08:33??CH4-8\Debug\canvas.pdb
?????文件??????15047??2014-06-22?20:12??CH4-8\Debug\canvasApp.obj
?????文件??????????0??2014-06-22?20:13??CH4-8\Debug\canvasApp.sbr
?????文件??????31736??2014-06-23?08:33??CH4-8\Debug\canvasfr
?????文件??????????0??2014-06-23?08:33??CH4-8\Debug\canvasfr
?????文件?????????32??2014-06-22?20:12??CH4-8\Debug\canvasr.res
?????文件?????132096??2014-06-23?09:13??CH4-8\Debug\vc60.idb
?????文件??????53248??2014-06-23?08:33??CH4-8\Debug\vc60.pdb
?????文件????????630??2014-06-22?17:30??CH4-8\MASK.BMP
?????文件???????1080??2014-06-22?17:38??CH4-8\MASK1.bmp
?????文件???????1352??2014-06-22?18:36??CH4-8\MASK2.bmp
?????文件????????630??2014-06-22?17:28??CH4-8\SNOW.BMP
............此處省略8個(gè)文件信息
評論
共有 條評論