| 发表于:2007-04-13 10:51:481楼 得分:20 |
双缓冲技术应该能解决你这个问题 cdc memdc; //首先定义一个显示设备对象 cbitmap membitmap;//定义一个位图对象 //随后建立与屏幕显示兼容的内存显示设备 memdc.createcompatibledc(null); //这时还不能绘图,因为没有地方画 ^_^ //下面建立一个与屏幕显示兼容的位图,至于位图的大小嘛,可以用窗口的大小 membitmap.createcompatiblebitmap(pdc,nwidth,nheight); //将位图选入到内存显示设备中 //只有选入了位图的内存显示设备才有地方绘图,画到指定的位图上 cbitmap *poldbit=memdc.selectobject(&membitmap); //先用背景色将位图清除干净,这里我用的是白色作为背景 //你也可以用自己应该用的颜色 memdc.fillsolidrect(0,0,nwidth,nheight,rgb(255,255,255)); //绘图 memdc.moveto(……); memdc.lineto(……); //将内存中的图拷贝到屏幕上进行显示 pdc-> bitblt(0,0,nwidth,nheight,&memdc,0,0,srccopy); //绘图完成后的清理 membitmap.deleteobject(); memdc.deletedc(); 你看看行不行 | | |
|