转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8696724
欢迎关注微博:http://weibo.com/MoreWindows
Windows界面编程之位图显示特效系列目录:
1. 《Windows界面编程第九篇位图显示特效交错效果》
http://blog.csdn.net/morewindows/article/details/8696720
2. 《Windows界面编程第十篇位图显示特效百叶窗效果》
http://blog.csdn.net/morewindows/article/details/8696722
3. 《Windows界面编程第十一篇位图显示特效随机积木效果》
http://blog.csdn.net/morewindows/article/details/8696724
4. 《Windows界面编程第十二篇位图显示特效飞入效果与伸展效果》
http://blog.csdn.net/morewindows/article/details/8696726
5. 《Windows界面编程第十三篇位图显示特效合集》
http://blog.csdn.net/morewindows/article/details/8696730
本篇《Windows界面编程第十一篇位图显示特效随机积木效果》将讲解位图的随机积木显示效果。如下图所示
(图片不能打开,请访问http://blog.csdn.net/morewindows/article/details/8696724):
在程序设计上,随机积木效果是最简单的啦,只要一格一格的显示出整个位置即可:
// 随机积木
//《Windows界面编程第十一篇 位图显示特效 随机积木效果》
//http://blog.csdn.net/morewindows/article/details/8696724
void AnimateDraw_RandomBlocks(HDC hdc, HDC hdcMem, int nWidth, int nHeight, UINT nIntervalTime = 15,
int nRowBlocks = 10, int nColBlocks = 10)
{
int nStepRow, nStepCol, nDisplayCount;
int nSumBlocks = nRowBlocks * nColBlocks;
bool *pFlagArray = new bool[nSumBlocks];
memset(pFlagArray, 0, sizeof(bool) * nSumBlocks);
nStepRow = nWidth / nRowBlocks;
nStepCol = nHeight / nColBlocks;
srand((unsigned)time(NULL));
nDisplayCount = 0; //已显示方格个数
while (true)
{
int row = rand() % nRowBlocks;
int col = rand() % nColBlocks;
if (pFlagArray[row * nColBlocks + col])
continue;
pFlagArray[row * nColBlocks + col] = true;
BitBlt(hdc, row * nStepRow, col * nStepCol, nStepRow, nStepCol,
hdcMem, row * nStepRow, col * nStepCol, SRCCOPY);
nDisplayCount++;
if (nDisplayCount >= nSumBlocks)
break;
Sleep(nIntervalTime);
}
BitBlt(hdc, 0, 0, nWidth, nHeight, hdcMem, 0, 0, SRCCOPY);
}
完整的程序在《Windows界面编程第十三篇位图显示特效合集》
http://blog.csdn.net/morewindows/article/details/8696730
下一篇《Windows界面编程第十二篇位图显示特效飞入效果与伸展效果》将讲解位图的飞入效果与伸展效果。
地址:http://blog.csdn.net/morewindows/article/details/8696726
转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8696724
欢迎关注微博:http://weibo.com/MoreWindows
分享到:
相关推荐
《Windows界面编程第十三篇 位图显示特效合集》 http://blog.csdn.net/morewindows/article/details/8696730 配套程序。 自己封装了一些常用字的位图特效显示函数——交错、百叶窗、随机积木、飞入伸展。代码清晰可...
Windows 位图显示效果。都是使用相同的一个函数。 雨滴效果 百叶窗效果 随机积木效果 水平交错效果
博客文章《Windows界面编程第一篇 位图背景与位图画刷》的配套程序,示范了为对话框添加位图背景,并分别用自贴图和位图画刷来完成。程序注释翔实,可读性强。
windows编程技术里关于位图的相关操作。背景、位图显示。。。。。。。。。。。。。
VC MFC界面编程实例之位图按钮 用MFC 实现 适合初学者
mfc vc 界面编程之特色位图菜单 menu bitmap
C++位图显示特效合集(飞入、百叶窗、交错显示等)
位图及特效类。功能全面,而代码简洁。使用了Win32 API。
中山大学信科院Windows编程课件完整版 01绪论 02MFC基础 03界面编程1-菜单 04界面编程2-控制条 05界面编程3-对话框 06界面编程4-控件 07界面编程5-鼠标、键盘与光标 08GDI编程1-绘图 09GDI编程2—文字、位图...
这是关于windows编程中位图加载的一个简单示例,适合初学者看看。
MFC是传统Windows编程的首选。MFC是Windows API的C++类封装,MFC应用程序... 第11章 GDI编程4—图元文件与打印 第12章 文档与视图 第13章 MFC功能包编程简介 第14章 GDI+编程基础 第15章 GDI+高级编程
MFC是传统Windows编程的首选。MFC是Windows API的C++类封装,MFC应用程序... 第11章 GDI编程4—图元文件与打印 第12章 文档与视图 第13章 MFC功能包编程简介 第14章 GDI+编程基础 第15章 GDI+高级编程
MFC是传统Windows编程的首选。MFC是Windows API的C++类封装,MFC应用程序... 第11章 GDI编程4—图元文件与打印 第12章 文档与视图 第13章 MFC功能包编程简介 第14章 GDI+编程基础 第15章 GDI+高级编程
3.如何通过装入位图文件显示位图?(Visual C++编程 源代码)3.如何通过装入位图文件显示位图?(Visual C++编程 源代码)3.如何通过装入位图文件显示位图?(Visual C++编程 源代码)3.如何通过装入位图文件显示...
1.如何通过读取位图资源显示位图?(Visual C++编程 源代码)1.如何通过读取位图资源显示位图?(Visual C++编程 源代码)1.如何通过读取位图资源显示位图?(Visual C++编程 源代码)1.如何通过读取位图资源显示...
2.如何通过读取位图文件显示位图?(Visual C++编程 源代码)2.如何通过读取位图文件显示位图?(Visual C++编程 源代码)2.如何通过读取位图文件显示位图?(Visual C++编程 源代码)2.如何通过读取位图文件显示...
可实现双位图在窗口内随机切换显示的功能。
第十二章 第十一天课程——与控制对话 第十三章 第十二天课程——窗口控制和控制消息 API 第十四章 第十三天课程——窗口控制的细分类 第十五章 第十四天课程——窗口的样式 第十六章 本篇复习——Windows 控制...
VB编程源代码 08将位图图标放置在菜单中VB编程源代码 08将位图图标放置在菜单中VB编程源代码 08将位图图标放置在菜单中VB编程源代码 08将位图图标放置在菜单中VB编程源代码 08将位图图标放置在菜单中VB编程源代码 08...
VisualC 实效编程 24 裁剪位图VisualC 实效编程 24 裁剪位图VisualC 实效编程 24 裁剪位图VisualC 实效编程 24 裁剪位图VisualC 实效编程 24 裁剪位图VisualC 实效编程 24 裁剪位图VisualC 实效编程 24 裁剪位图...