1.dialog中绘图
都是在绘图设备上绘图
如果是在onpaint中可以直接使用CPaintDC dc(this)中的dc去绘图
如果不是在onpaint中则需要先创建绘图设备或者取得绘图设备,
a.取得绘图设备
是针对图像而言的
CreateCompatibleDC:创建内存DC。这个函数可以创建一个内存DC,使用这个函数绘图时可避免发生图像闪烁的现象,也就是大家常说的“二次缓冲”技术.
在这个内存画布画完图之后,需要将这个画布贴到实际的绘图设备上面,
不过是针对图像而言的,如下直接在内存DC中画文字无法显示
都是在绘图设备上绘图
如果是在onpaint中可以直接使用CPaintDC dc(this)中的dc去绘图
如果不是在onpaint中则需要先创建绘图设备或者取得绘图设备,
a.取得绘图设备
CDC *pDC=GetDC();
pDC->DrawText("hello",CRect(0,0,100,100),DT_LEFT);
b.创建内存绘图设备并贴在实际的设备之上:是针对图像而言的
CreateCompatibleDC:创建内存DC。这个函数可以创建一个内存DC,使用这个函数绘图时可避免发生图像闪烁的现象,也就是大家常说的“二次缓冲”技术.
在这个内存画布画完图之后,需要将这个画布贴到实际的绘图设备上面,
不过是针对图像而言的,如下直接在内存DC中画文字无法显示
CDC *pDC=GetDC();
CDC *pMemDC=new CDC;
pMemDC->CreateCompatibleDC(pDC);
pMemDC->DrawText("hello",CRect(0,0,100,100),DT_LEFT);
StretchBlt(pDC->m_hDC,0,0,100,100,pMemDC->m_