我们今天要在内存中创建一个内存块,用于存储图像数据,并在这个内存块中绘制一个图形,比如圆形,然后在基于对话框的界面上显示它,假设大家对VS已经有一点认识了,我们今天接着昨天的项目向下进行,首先在对话框上添加一个按钮:
在工具箱里选择Button,然后在对话框上拖动出一个按钮,大小任意,ID也不用改,可以改个Caption(这些都不重要),然后双击它,进行代码编写。代码大部分可以复制昨天确定按钮里面的代码,这里面我们只加入了几行,但是想搞明白,不是那么容易的事:
int i,j;
int x0,y0,r; //圆心x,y点坐标及半径
int x,y; //x,y中间变量
float PI=3.1415926; //圆周率
x0=120;
y0=120;
r=100;
LPBYTE *pic2D;//定义2维内存缓冲指针
pic2D=new unsigned char*[bm.bmHeight];
for(i=0;i<bm.bmHeight;i++)
{
pic2D[i]=pic+i*bm.bmWidth*bm.bmBitsPixel/8;//将二维内存指针指向图像内存区的每一行行首
}
for(i=0;i<360;i++)//绘制圆形
{
x=r*cos(float(i)/180.0*PI); //计算圆上逐点的x坐