不能将参数1从“void (CDC *,CPrintInfo *,void *)”转换为“DRAWFUN”?????
class CF : public CFrameWnd
{public:
CF(DRAWFUN pDraw,CWnd*pOldW,CWnd* pCallW,BOOL bDirect,LPCTSTRstTitle=NULL);
}
void Drawf(CDC* pDC,CPrintInfo* pInfo,void* pVoid=NULL);
void CStatDialog::OnBnClickedButton2()
{
m_PreFrame = new CF(Drawf,this,this,FALSE);//编译时说不能将参数1从“void (CDC *,CPrintInfo *,void *)”转换为“DRAWFUN”。到底是怎么回事那?这段程序在别人的代码里是可以用的,我拿过来以后就不行了。
m_PreFrame->ShowWindow(SW_SHOW);
m_PreFrame->UpdateWindow();
}
void Drawf(CDC* pDC,CPrintInfo* pInfo,void* pVoid)
{
((CStatDialog*)pVoid)->OnPrint(pDC,pInfo);
}
z在stdafx。h中定义:
typedef void(*DRAWFUN)(CDC* pDC,CPrintInfo* pInfo,void* pVoid=NULL);
{public:
CF(DRAWFUN pDraw,CWnd*pOldW,CWnd* pCallW,BOOL bDirect,LPCTSTRstTitle=NULL);
}
void Drawf(CDC* pDC,CPrintInfo* pInfo,void* pVoid=NULL);
void CStatDialog::OnBnClickedButton2()
{
m_PreFrame = new CF(Drawf,this,this,FALSE);//编译时说不能将参数1从“void (CDC *,CPrintInfo *,void *)”转换为“DRAWFUN”。到底是怎么回事那?这段程序在别人的代码里是可以用的,我拿过来以后就不行了。
m_PreFrame->ShowWindow(SW_SHOW);
m_PreFrame->UpdateWindow();
}
void Drawf(CDC* pDC,CPrintInfo* pInfo,void* pVoid)
{
((CStatDialog*)pVoid)->OnPrint(pDC,pInfo);
}
z在stdafx。h中定义:
typedef void(*DRAWFUN)(CDC* pDC,CPrintInfo* pInfo,void* pVoid=NULL);
...全文
相关推荐
MFC对话框中实现打印
MFC对话框中实现打印。帮助你实现对话框的打印
OnPrepareDC
许多MFC库函数只能在设备坐标下工作(尤其CRect类成员函数)。可以认为CDC的所有成员函数都一逻辑坐标作参数。可以认为CWnd的成员函数都以设备坐标做参数。(所有在实际窗口上点击获得的坐标都是逻辑坐标)。在设置了设备环境的映射模式及相应的参数以后,CDC的LPtoDP和DPtoLP函数可以用来在逻辑坐标系和设备做表系之间进行转换。 在CView的虚函数OnPrepareDC中设置映射模式要比在OnDraw函数中要好。
c++ 实现打印 mfc4
4个不同类型的打印的小例子 希望大家一起交流一下
MFC打印预览
MFC调用系统函数,封装成累, 打印前预览,预览后可打印,已经测试。主要的分页,获取DC等都有。其中要小心坐标系的对应,否则打印出来的就不是自己想要的效果
VC中如何使用打印及打印预览
VC++对话框中使用打印及打印预览,通过文档内容一步一步教你如何添加代码


