c语言 桌面下雪程序,用C++写的在桌面上飘雪的特效程序

这是一个使用C++编写的程序,能够在用户的桌面上模拟下雪的视觉效果。程序通过创建多个雪点,并控制它们随机飘落的速度和方向,同时考虑了积雪效果和屏幕尺寸的适配。用户可以通过设置不同的参数来调整雪点的数量、速度和粘贴度,从而获得不同的飘雪体验。
摘要由CSDN通过智能技术生成

39f958c39a410b139a2a5c9aa9aefd4f.png

#include〈windows.h〉

#include〈time.h〉

#include〈stdlib.h〉

#include〈iostream.h〉

const int SnowNumber=500; //雪点数量

struct SnowNode

{

POINT postion; //雪点位置

int iColor; //先前的颜色

int iSpeed; //下落速度

int iMove; //下落距离

int iStick; //粘贴度

};

SnowNode SnowNodes[SnowNumber]; //雪点数组

int hTimer=0;

int CrWind=0;

int CrStep=0; //当前循环步数(用于限速)

int ScreenWidth=0; //屏幕宽度

int ScreenHeight=0; //屏幕高度

void GetScreenSize();

void CALLBACK TimerProc(HANDLE hWnd,UINT uMsg,UINT idEvent,DWORD dwTime);

void InitSnowNodes();

void MoveSnowNodes();

int WINAPI WinMain(HINSTANCE hInstance,

HINSTANCE hPrevInstance,

LPSTR lpCmdLine,

int nCmdShow

)

{

MSG msg; //标准windows消息

LARGE_INTEGER Frequency; //高性能定时器频率

LARGE_INTEGER StartCt,EndCt;//高性能定时器计数

float ElapsedTime; //时间间隔

srand((unsigned)time(NULL));

GetScreenSize();

InitSnowNodes();

QueryPerformanceFrequency(&Frequency);

hTimer=SetTimer(0,0,rand()%5*500,(TIMERPROC)TimerProc);

if(hTimer==0)

{

MessageBox(0,TEXT(“创建定时器失败“),TEXT(“提示“),MB_OK|MB_ICONINFORMATION);

return -1;

}

RegisterHotK

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值