设为首页 加入收藏

TOP

VC开发圣诞程序雪花飞舞的世界
2014-11-23 18:54:17 】 浏览:1856
Tags:开发 圣诞 程序 雪花 飞舞 世界

又到一年圣诞。为了烘托气氛。在两天前。写了个圣诞的小程序。

首先这个程序用到比较多的知识点

众所周知。一般情况下在MFC类库里进行png的贴图都有点麻烦

因为MFC一般用bmp格式的贴图。

于是我采用GDI的贴图形式贴png图

采用分层窗口,透明处理,以及鼠标穿透来使窗口透明,界面变到桌面

本来可以采用定时器来进行雪花的时间设定。但是为了更好的控制。我采用了一条线程来处理

自设一个Image类来存储所有图像 并采用msdn上的一段代码使png图片封装到资源。以IDX_的形式调用

采用静态链接库。封装GDI的图像库。

CDC *pDCDst=this->GetDC();
	CDC dcSrc;
	dcSrc.CreateCompatibleDC(pDCDst);
	CBitmap bmp;
	bmp.CreateCompatibleBitmap(pDCDst,cx,cy);
	dcSrc.SelectObject(&bmp);

	//用GDI+显示PNG图片
	Graphics _Graphics(dcSrc.m_hDC);
	if(limit<100)
	{
		_Graphics.DrawImage(myimage._pPic01,600,300,myimage._pPic01->GetWidth(),myimage._pPic01->GetHeight());
	}
	else if(limit>=100&&limit<200)
	{
		_Graphics.DrawImage(myimage._pPic02,600,300,myimage._pPic02->GetWidth(),myimage._pPic02->GetHeight());
	}
	for(int i=0;i
  
   ReleaseDC(pDCDst);
	if(limit<300)
	{
	  limit++;
	}
  
这段代码是贴图的主要代码。

最后的效果如下

\

首先产生的奇迹冬瓜logo透明

\

\

接着logo消失 变成祝福语 雪花小范围飘落

\

下载地址

点击打开链接

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇[VC++]001绘制直线 下一篇VS 解决方案的配置Debug和Release..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目