我的对话框有一个PICTURE控件,并定义了:
CDC MemDispDC;(屏幕内存DC)MemDispDC.CreateCompatibleDC(&DispDC)
CDC MemPrintDC;(打印内存DC)MemPrintDC.CreateCompatibleDC(&PrintDC)
CDC DispDC
CDC PrintDC我现在想把PICTURE控件显示的内容打印出来,流程是否是这样:
1.先在MemDispDC画东西,画完拷贝到DispDC
2.把DispDC内容拷贝到MemPrintDC(这里会不会出现兼容方面的问题,因为MemPrintDC是和打印设备兼容的内存DC,而DispDC是屏幕DC)
3.MemPrintDC内容拷贝到PrintDC
或者:
1.先在MemDispDC画东西,画完拷贝到DispDC
2.MemDispDC内容直接拷贝到PrintDC请各位有经验的朋友支招。
CDC MemDispDC;(屏幕内存DC)MemDispDC.CreateCompatibleDC(&DispDC)
CDC MemPrintDC;(打印内存DC)MemPrintDC.CreateCompatibleDC(&PrintDC)
CDC DispDC
CDC PrintDC我现在想把PICTURE控件显示的内容打印出来,流程是否是这样:
1.先在MemDispDC画东西,画完拷贝到DispDC
2.把DispDC内容拷贝到MemPrintDC(这里会不会出现兼容方面的问题,因为MemPrintDC是和打印设备兼容的内存DC,而DispDC是屏幕DC)
3.MemPrintDC内容拷贝到PrintDC
或者:
1.先在MemDispDC画东西,画完拷贝到DispDC
2.MemDispDC内容直接拷贝到PrintDC请各位有经验的朋友支招。
void Draw(CDC *pDC)
{
......
}
打印时,传入打印DC;显示时,传入屏幕DC。
......可以用你屏幕显示的模块。
兄弟,我大概知道你意思了。你是说,当我要显示时:MemDispDC.CreateCompatibleDC(&DispDC)
把MemDispDC传进去;而当我要打印时:MemPrintDC.CreateCompatibleDC(&PrintDC),把MemPrintDC传进去即可。
兄弟,我还想问最后一个问题,答完结贴给分:我想把整个客户区,包括picture控件的内容,按钮,静态文本之类的统统打印出来,是不是这样可行:printDC.StretchBlt(....GetClientDC(),...);